Java 7需要什么样的新特性? jdk1.5称为jdk 5.0(代号Tiger)马上就要发布Release版了, 而jdk 6.0也开始投入研发。目前,在Java社区,已经开始讨论 jdk 7.0(代号Dolphin)需要加入什么新特性了。
这些讨论中,有关于语言特性上的改进,也有关于一些琐碎的小功能的增加,其中有些特性看起来倒是很吸引人的。 需不需要为java增加c++一样的预定义宏和操作符重载? c++中有预定义宏的功能,这在一定程度上方便了开发者,但同时又对java语言本身带来一定的风险. 有人指出,提供简单的预定义宏,还有有必要的,例如: #ifdef something do something #else do something else #endif 这样对编译条件的控制,可以大大方便开发者。 而操作符重载,引起最大的反映就是,它可能对java语言本身具有的安全性带来挑战。 其实这两种特性在jdk 6.0时就有人进出, 但引起大多数人的反对。不过还是有人提议,应该在Number型的类提供操作符重载,就像这样: Long aLongNumber=new Long(10); BigInteger aBigInteger= new BigInteger("500"); BigInteger result= aLongNumber+aBigInteger; 使其可以直接使用四则运算符,而不用调用繁琐的运算方式。(对于类似Number型的运算符重载,好像C#已经有支持这样的功能了)
具有优先级的监听器 这个特性比较有趣,提出者认为,现在jdk所有的监听器特性,其listener的调用顺序无法控制,一般就是register的顺序,使用者无法对它们排序,也无法控制它们谁先或谁后执行。你认为应该如何才好呢? 增加JARPATH 我们知道java运行时,是通过CLASSPATH来找到相关的class的。但是,很多初学者就栽在这个上面,总是被CLASSPATH弄个半死。例如,我们的程序要引用一个jar或class,必须通过CLASSPATH一个个的加,就像这样: CLASSPATH=.;%CLASSPATH%;a.jar;b.jar;c.jar,x.jar..... 这样了会觉得不甚其烦。如果jdk能支持一种机制,将所有jar都放在同一个目录,只要在CLASSPATH中加上这个目录的路径就行了。提议者将之称为JARPATH.
全文请看:http://www.javagarden.org

|