2013-05-20 24 views
0

我遇到了一個場景,我需要使用BASE64Encoder進行編碼和解碼。 我發現在eclipse中,限制是在這個類上。爲什麼日食會對BASE64Encoder施加限制?

我想知道是否有任何具體的原因,因爲它是由eclipse開發者完成的。 如果是這樣,那麼原因是什麼?

注意:我不是問如何解決BASE64Encoder限制。相反,我想知道這個限制的原因。

+2

您可能會發現這是很有幫助的 http://www.oracle.com/technetwork/java/faq-sun-packages-142232.html –

+0

@AntiEarth你應該發佈這個答案 - 我會upvoted它! (除非我誤解,它不回答這個問題) –

+0

@AntiEarth:韋恩是正確的。你應該發佈這個答案。 :) – Abhinav

回答

2

我相信這是相關的;
http://www.oracle.com/technetwork/java/faq-sun-packages-142232.html

總結;
BASE64Encoder是sun。*包的一部分,它們是「不屬於公衆,支持的接口」(如Evgeniy所說的,它用於內部目的的)。

因此;
"A Java program that directly calls into sun.* packages is not guaranteed to work on all Java-compatible platforms. In fact, such a program is not guaranteed to work even in future versions on the same platform."

我相信,我當時答應了一些向上的投票C:

2

BASE64Encoder由Oracle JRE用於內部目的,它不是Java公共API。其他JRE可能沒有這個類。如果你在你的應用中使用它,它將不可移植。