注解: RetetionPolicy.SOURCE、RetetionPolicy.CLASS、RetetionPolicy.RUNTIME分别对应:Java源文件—>class文件内存中的字节码。注解的属性:数组类型的属性 int arrayAttr default{1,2,3} 如果数组属性中只有一个元素,这时候属性值部分可以省略大括号枚举类型的属性 EnumTest.TrafficLamp lamp(); @MyAnnotation(lamp = EnumTest.TrafficLamp.GREEN) 注解类型的属性 MetaAnnotaion annotationAttr()default @MetaAnnotation(“XXXX”); @MyAnnotation(annotationAttr=@MetaAnnotation(“YYY”)) 泛型: jdk1.5的集合类希望你在定义集合时,明确表示你要向集合中装入哪种类型的数据,无法加入指定类型以外的数据 ArrayList colletion =new ArrayList(); 利用反射绕过编译器向集合类中加入其他类型的数据 collection.getClass().getMethod(“add”,Object.class).invoke(colletion,”abc”); 参数化类型不考虑参数的继承关系在创建数组实例时,数组的元素不能使用参数化的类型。 使用?通配符可以应用其他各种参数化的类型,?通配符定义的变量主要用作引用,可以调用与参数无关的方法,不能调用与参数化有关的方法。类加载器: Java虚拟机中可以安装多个类加载器,系统默认三个主要类加载器,每个类负责加载特定位置的类:BootStrap,ExtClassLoader,AppClassLoader 类加载器也是Java类,因为他是Java类的类加载器本身也要被类加载器加载,显然必须有第一个类加载器不是Java类,这正是BootStrap
注解
最新推荐文章于 2025-05-14 21:45:37 发布