它是否是“javax”非法(保留)软件包名称?

我发现java。*和javax。*是非法(保留)软件包名称(在“OCA Java SE 7程序员I学习指南”一书中)的信息。 当我尝试创建包“java”并从中运行类时,我收到:

Exception in thread "main" java.lang.SecurityException: Prohibited package name: java

但是当我从“javax”包运行类时,我没有收到任何错误。 在docs.oracle.com上,我发现只有信息:

Packages in the Java language itself begin with java. or javax.

所以......是不是“javax”非法名称? 也许这只是在Java EE或更旧版本的Java上是非法的(我已经在JDK 1.6.0_43和1.7.0_25上试过了)


javax. 用于扩展(可能在JRE内),因此确定可以在这些包中定义类。 IIRC,这可以通过添加javax.在不可信的上下文中禁用javax.package.definition安全属性(未选中)。

java. 是特别的,因为ClassLoader阻止这些包中的非引导类加载器作为反Microsoft措施。

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

上一篇: Is it "javax" illegal(reserved) package name or not?

下一篇: How to reliably determine when UICollectionView layout has finished animating