工具包返回对专有Sun API的引用?

我刚刚将项目升级到JDK 1.6,在编译时,我有一个测试类,它实现了java.awt.Toolkit,并实现了没有什么特别的方法(除了捕获对beep命令的调用)。

(这是一个旧的测试,应该可以用几种方法重写(可以是模拟它,也可以在简单的界面中包装这些功能),但是编译器现在会抛出一堆警告,如下所示:

[19:50:10]:[javac] MemoryManagerTest.java:14:警告:java.awt.dnd.peer.DragSourceContextPeer是Sun专有的API,可能会在将来的版本中删除[19:50:10]:[javac ] import java.awt.dnd.peer.DragSourceContextPeer

首先有趣的是,有一个名为java.awt.dnd.peer的包将是一个sun专有的API(尽管显然是实现),但是这个消息是假的还是真的? 如果这是真的,那么关于与这些接口绑定的整个Toolkit类是什么意思?


您可以检查API文档,发现没有列出java.awt.dnd.peer中的任何类,因此也没有特定于Sun VM的实现。 即使Toolkit类本身是公共API的一部分,但该类的实现当然也是VM特定的,并且可能使用其他专有的Sun内部类。

链接地址: http://www.djcxy.com/p/86105.html

上一篇: Toolkit returns references to proprietary Sun APIs?

下一篇: Can enums be subclassed to add new elements?