随笔分类 - 注解与反射
摘要:Java反射机制研究及应用一 Java反射机制提供的功能 在运行时判断任意一个对象所属的类>在运行时构造任意一个类的对象 在运行时判断任意一个类所具有的成员变量和方法>在运行时获取泛型信息 在运行时调用任意一个对象的成员变量和方法>在运行时处理注解 >生成动态代理 反射相关的主要API java.l
阅读全文
摘要:反射操作注解 getAnnotations getAnnotation package 反射;//练习反射操作注解 import java.lang.annotation.*; import java.lang.reflect.Field; public class Mai2n { public s
阅读全文
摘要:反射操作泛型 Java采用泛型擦除的机制来引入泛型, Java中的泛型仅仅是给编译器javac使用的,确保数据的安全性和免去强制类型转换问题,但是,一旦编译完成﹐所有和泛型有关的类型全部擦除 为了通过反射操作这些类型,Java新增了ParameterizedType , GenericArrayTy
阅读全文
摘要:package 反射;//测试性能分析 import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; public class Main2 { //普通方式调用 public static v
阅读全文
摘要:上一章小结 在实际的操作中,取得类的信息的操作代码,并不会经常开发。一定要熟悉java.lang.reflect包的作用,反射机制。 如何取得属性、方法、构造器的名称,修饰符等。 有了Class对象,能做什么? 创建类的对象:调用Class对象的newlnstance()方法 1)类必须有一个无参数
阅读全文
摘要:获取运行时类的完整结构 通过反射获取运行时类的完整结构 Field、Method、Constructor、Superclass、Interface、Annotation 实现的全部接口 所继承的父类全部的构造器全部的方法全部的Field注解 package 反射;//获得类的信息 import ja
阅读全文
摘要:类加载器的作用 类加载的作用:将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时 数据结构,然后在堆中生成一个代表这个类的java.lang.Class对象,作为方法区中类数据的访问入口。 类缓存∶标准的JavaSE类加载器可以按要求查找类,但一旦某个类被加载到类加载器中,
阅读全文
摘要:什么时候会发生类初始化? 类的主动引用(一定会发生类的初始化) 当虚拟机启动,先初始化main方法所在的类new一个类的对象 调用类的静态成员(除了final常量)和静态方法 使用java.lang.reflect包的方法对类进行反射调用 当初始化一个类,如果其父类没有被初始化,则先会初始化它的父类
阅读全文
摘要:java内存: 堆: 1.存放new的对象和数组 2.可以被所有的线程共享,不会存放别的对象引用 栈: 1.存放基本变量类型(会包含这个基本类型的具体数值) 2.引用对象的变量(会存放这个引用在堆里的具体位置) 方法区: 1.可以被所有的线程共享 2.包含了所有的class和static变量 类的加
阅读全文
摘要:哪些类型可以有Class对象? class:外部类,成员(成员内部类,静态内部类),局部内部类,匿名内部类。interface:接口 []:数组 enum:枚举 annotation:注解@interfaceprimitive type:基本数据类型void package 反射; import j
阅读全文
摘要:Class类 对象照镜子后可以得到的信息:某个类的属性、方法和构造器、某个类到底实现了哪些接口。对于每个类而言,JRE都为其保留一个不变的Class类型的对象。一个Class对象包含了特定某个结构(class/interfacelenum/annotation/primitive type/void
阅读全文
摘要:Java反射机制提供的功能 在运行时判断任意一个对象所属的类在运行时构造任意一个类的对象 在运行时判断任意一个类所具有的成员变量和方法在运行时获取泛型信息 在运行时调用任意一个对象的成员变量和方法≥在运行时处理注解 生成动态代理 Java反射优点和缺点一 优点: 可以实现动态创建对象和编译,体现出很
阅读全文
摘要:java是一个静态语言,因为反射让所以让java语言变成了准动态语言 讲解:当我们要使用java写外挂时,我们就会用的反射,因为当游戏运行时,我们怎么把代码注入到游戏中,java代码中的反射可以做到这一点,通过运行时改变游戏量的数据 动态语言 是一类在运行时可以改变其结构的语言:例如新的函数、对象、
阅读全文
摘要:自定义注解关键字:使用@interface自定义注解时﹐自动继承了java.lang.annotation.Annotation接口 分析: interface用来声明一个注解﹐格式: public @interface 注解名{定义内容}√其中的每一个方法实际上是声明了一个配置参数. √方法的名称
阅读全文
摘要:元注解的作用就是负责注解其他注解,Java定义了4个标准的meta-annotation类型,他们被用来提供对其他annotation类型作说明. 这些类型和它们所支持的类在java.lang.annotation包中可以找到.(@Target , @Retention ,Documented ,
阅读全文
摘要:@override :定义在java.lang.Override中,此注释只适用于修辞方法﹐表示一个方法声明打算重写超类中的另一个方法声明. @Deprecated:定义在java.lang.Deprecated中,此注释可以用于修辞方法﹐属性,类,表示不鼓励程序员使用这样的元素,通常是因为它很危险
阅读全文
摘要:Annotation是从JDK5.0开始引入的新技术. Annotation的作用: 不是程序本身,可以对程序作出解释.(这一点和注释(comment)没什么区别)可以被其他程序(比如:编译器等)读取. Annotation的格式: 注解是以"@注释名"在代码中存在的,还可以添加一些参数值﹐例如:@
阅读全文

浙公网安备 33010602011771号