一、JDK1.5有哪些新特性?
静态导入,可变参数,for循环增强,基本数据类型的自动装箱与拆箱,枚举,泛型,注解
二、静态导入
import可以导入一个类或者某个包下的所有类。import static 导入一个类下的某个静态方法或者所有的静态方法。
三、可变参数:一个方法接受的参数个数不固定。
可变参数的特点:(1)只能出现在参数列表的最后;(2)...位于变量类型和变量名之间,前后有无空格都可以。
(3)调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法中以数组的形式访问可变参数。
overload与override的区别:重载和重写。
重载:方法名相同,参数列表不同(参数个数不同,参数类型不同,参数顺序不同),与返回值类型无关。重写:也叫做覆盖。一般用在子类覆盖父类方法时,将父类中的方法重新写过。必须保证子类权限大于等于父类权限时才可以覆盖。静态方法只能覆盖静态方法。覆盖后,创建子类对象。调用该方法时,会运行子类函数中的内容。
四、增强for循环
五、基本数据类型自动装箱与拆箱
1、用普通类模拟实现枚举。
2、枚举基本应用
3、实现带有构造函数的枚举
4、带有抽象方法的枚举
七、泛型
前些篇章有阐述,这里不详写。
八、注解
1、什么是注解?注解是那些插入到源代码中使用其他工具可以对其进行处理的标签。这些工具可以在源码层次上进行操作,或者可以处理编译器在其中放置了注解的类文件。--------你定义一个注解,相当于告诉java工具一件事情,告诉它做什么。一个注解是一个类。
2、Deprecated注解
3、@Override注解---标识方法重写。
4、总结下来就是:注解相当于一种标记,在程序中加入了注解就等于为程序打上了某种标记,没加,则等于没有标记。以后,javac编译器,开发工具和其他程序可以直接通过用反射来了解你的类及各种元素上有无何种标记,看你有什么标记,就去干相应的事。标记可以添加在包,类,字段,方法,方法的参数以及局部变量上。
5、定义注解
每个注解都必须通过一个注解接口进行定义。与任何java接口一样,注解也将会被编译成class文件。
6、注解的反射调用
7、元注解
总共有4个元注解,用于描述注解接口的行为属性。@Target,@Retention,@Documented,@Inherited
关于@Target注解的元素类型
用于@Retention注解的保留策略