请问java1.4 和1.5 有什么区别吗? 为什么我的程序在1.4里可以运行,装了1.5就不可以了.连 javac mao.java 都会出错?我才学,研究了好久都不知道,急死了. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 应该是反着不行吧?“反着”是什么啊?javac 都不行,我看了bin 文件里,没这个文件。555..... 1.5中加了些新东西,在1.4中可能不支持! 比如:可变参数(Vararg) 正确地使用可变参数确实可以清理一些垃圾代码。典型的例子是一个带有可变的String参数个数的log方法: Log.log(String code) Log.log(String code, String arg) Log.log(String code, String arg1, String arg2) Log.log(String code, String[] args) 当讨论可变参数时,比较有趣的是,如果用新的可变参数替换前四个例子,将是兼容的: Log.log(String code, String... args) 所有的可变参数都是源兼容的——那就是说,如果重新编译log()方法的所有调用程序,可以直接替换全部的四个方法。然而,如果需要向后的二进制兼容性,那么就需要舍去前三个方法。只有最后那个带一个字符串数组参数的方法等效于可变参数版本,因此可以被可变参数版本替换。 类型强制转换 如果希望调用程序了解应该使用哪种类型的参数,那么应该避免用可变参数进行类型强制转换。看下面这个例子,第一项希望是String,第二项希望是Exception: Log.log(Object... objects) { String message = (String)objects[0]; if (objects.length > 1) { Exception e = (Exception)objects[1]; // Do something with the exception } } 关于编程思想源码! java 编译选项如何更改,例如增加一些告警提示 请为排序操作设计一个接口,并用顺序结构和链式结构实现这个结口? java 的初级问题 关于数据库数据的读取!求教! 关于CallableStatement类使用的疑问??急!急!急! 如何得到指定路径中的所有子目录? 有谁实现自己过Sun的Blueprints里面的 Front Controller 模式? 我该怎么办? String对象想调用Object的toString方法 奇怪的紧急问题,以前好好的代码,现在对数组的类型转化抛异常 请问有没有方法在java类里面动态编译.java文件产生.class文件
“反着”是什么啊?javac 都不行,我看了bin 文件里,没这个文件。555.....
比如:
可变参数(Vararg)
正确地使用可变参数确实可以清理一些垃圾代码。典型的例子是一个带有可变的String参数个数的log方法:
Log.log(String code) Log.log(String code, String arg) Log.log(String code, String arg1, String arg2) Log.log(String code, String[] args)
当讨论可变参数时,比较有趣的是,如果用新的可变参数替换前四个例子,将是兼容的:
Log.log(String code, String... args)
所有的可变参数都是源兼容的——那就是说,如果重新编译log()方法的所有调用程序,可以直接替换全部的四个方法。然而,如果需要向后的二进制兼容性,那么就需要舍去前三个方法。只有最后那个带一个字符串数组参数的方法等效于可变参数版本,因此可以被可变参数版本替换。 类型强制转换
如果希望调用程序了解应该使用哪种类型的参数,那么应该避免用可变参数进行类型强制转换。看下面这个例子,第一项希望是String,第二项希望是Exception:
Log.log(Object... objects) { String message = (String)objects[0]; if (objects.length > 1) { Exception e = (Exception)objects[1]; // Do something with the exception } }