java JDK的新特性

java JDK的新特性

ID:38981800

大小:16.04 KB

页数:5页

时间:2019-06-22

java   JDK的新特性_第1页
java   JDK的新特性_第2页
java   JDK的新特性_第3页
java   JDK的新特性_第4页
java   JDK的新特性_第5页
资源描述:

《java JDK的新特性》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、JDK现在大多都用1.6版本了。不过1.5的新特性还是要弄清楚的。1.5有哪些新特性呢①静态导入②可变参数③增强for循环④枚举⑤反射⑥javaBean内省⑦beanutils工具包⑧注解⑨泛型⑩类加载器⑾代理⑿线程并发库⒀基本类型的自动拆箱和装箱①静态导入:importstatic语句导入一个类中的某个静态方法或所有静态方法例importstaticjava.lang.math.sin;②可变参数一个方法接受的参数个数不固定:例:System.out.println(add(3,4,5,6))---System.out.println(add(3,4,5,

2、6,7,8))可变参数的特点:只能出现在参数列表最后,位于变量类型和变量名之间前后有无空格都可以,调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数③增强for循环for(type变量名:集合变量名){。。。}注:迭代变量必须在()中定义,集合变量可以是数字或者实现了Iterator接口的集合类例:publicstaticintadd(intx,int...args){intsum=x;for(intarg:args){sum+=arg;}returnsum;}基本数据的自动拆箱和装箱在大于-127,小于128之间的

3、数,在定义是,在内存中取同一个对象,内存自动记忆Integeri=12;Integerj=12;i==j→true枚举就是让某个类型的变量的取值只能为若干个固定值中的一个,否则编译器报错。枚举可以让编译器在编译时就可以控制源程序中的非法值。枚举是一种特殊的类,其中的每个元素都是该类的一个实例对象。枚举就相当于一个类,其中也可以定义构造方法,成员变量,普通方法和抽象方法。枚举元素必须在枚举体中的最开始部分。枚举元素列表的后要有分号与其他成员分隔,枚举只有一个成员时,就可以作为一种单例模式反射→Class类---对应各个类在内存中的字节码。一个类被类加载器加载到

4、内存中,占用一片存储空间,这个空间里面的内容就是类的字节码,不同类的字节码是不同的,所有他们在内存中的内容是不同的。得到各个字节码对应的实例对象类名.class对象.getClass()Class.forName("类名")反射就是把java类中的各种成分映射成相应的java类。Constructor类得到某个类的所有构造方法例Constructorconstructors[]=Class.forName("java.lang.String").getConstructors();得到某一个构造方法例Constructorconstructor=Class.

5、forName("java.lang.String").getConstructor(StringBuffer.class)创建实例对象通常方式:Stringstr=newString(newStringBuffer("abc"))反射方式Stringstr=(String)constructor.newInstance(newStringBuffer("abc"));Class.newInstance()方法例子:Stringobj=(String)Class.forName("java.lang.String").newInstance();该方法内部先

6、得到默认的构造方法,然后用该构造方法创建实例对象,内部代码用到了缓存机制来保存默认构造方法的实例对象Field类代表某个类中的一个成员变量Method类代表某一个类中的成员方法例子:MethodcharAt=Class.forName("java.lang.String").getMethod("charAt",int.class)调用方法通常方式System.out.println(str.charAt(1))反射方式System.out.println(charAt.invoke(str,1))jdk1.4和jdk1.5的invoke方法的区别jdk1.

7、5:publicObjectinvoke(Objectobj,Object...args)jdk1.4publicObjectinvoke(Objectobj,Object[]args)按1.4的语法,需要将一个数组作为参数传递给invoke方法时,数组中的每个元素分别对应被调用方法的中一个参数所以调用charAt()的代码页可以用jdk1.4改写为char.invoke("str",newObject[]{1})启动java程序的main方法的参数是一个字符串数组,publicstaticvoidmain(Stringargs[]),通过反射方式来调用这个

8、main方法时,是按1.4语法把数组打散成若干个单独

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。