Java 7.0需要什么样的新特性?
2004-09-16 10:54
405 查看
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#已经有支持这样的功能了)
全文请看:http://www.javagarden.org
这些讨论中,有关于语言特性上的改进,也有关于一些琐碎的小功能的增加,其中有些特性看起来倒是很吸引人的。
需不需要为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
相关文章推荐
- 在什么样的场景下,需要利用到Java的反射特性编程?
- AndroidStudio使用java1.8新特性需要的配置
- 黑马程序员_Java7.0新特性
- Java 9 你需要知道的新特性
- Java 8 你需要掌握的新特性
- 高薪JAVA工程师需要什么样的技术
- java学习之旅18、19--switch语句_基本用法_case穿透现象,jdk7.0新特性_增强switch语句
- java学习要点(除C++特性外需要注意的特性)
- Java基础知识?学习java需要什么样…
- 在java开发过程中,添加表时,需要配置一下的目录和文件。
- java中位异(^)的特性
- 利用java8新特性实现类似javascript callback特性
- Java 8特性探究(1):通往lambda之路
- java程序员进阶之路需要的学习过程
- java什么时候需要多线程 共享 变量
- Java 9 新特性快速预览
- Spring 4 支持的 Java 8 特性
- JAVA8新特性——方法引用
- Java 8 Update 20 的新特性 —— 字符串去重
- 成为一名Java高级架构师到底需要学习什么?