2

我刚刚将我们的项目升级到 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 ] 导入 java.awt.dnd.peer.DragSourceContextPeer

首先有趣的是,带有名为 java.awt.dnd.peer 的包的东西将是 sun 专有的 API(尽管显然实现是),但这个消息是假的,还是真的是真的?如果这是真的,那么这对与这些接口相关的整个 Toolkit 类有什么影响?

4

1 回答 1

1

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

于 2010-07-09T13:51:44.513 回答