摘要:
注解定义了这些属性和属性值。定义了这些值一定期望在程序运行过程中,可以把这些属性值拿出来用一用 注解代替配置文件 复制之前创建的ReflectTest这个类。 之前反射Test是读取配置文件拿到className和Method。现在以后了注解以后,我们可以把配置文件的工作交给注解来完成,来简化我们配 阅读全文
摘要:
例如查看@Overide的注解 @Target作用是位置,,作用在类上面,还是作用在方法上面 @Retention是它能被保留到什么时候。三个阶段。源码、class、runtime 定义注解类 改成@interface 在创建类的时候可以选择为Annotation类型。 Target taget里面 阅读全文
摘要:
public abstract可以省略 注解里面不允许返回void类型 new一个class选择枚举类型 Person这个就是一个枚举类 返回一个枚举类型 再定义一个注解类 注解里面可以返回另外一个注解的类 返回一个字符串的数组 定义一个Worker的class类型 返回普通的类为注解的类型 不可以 阅读全文
摘要:
点进去@Override的源码 进去看看 自己写个注解 通过反编译查看注解的原理 在桌面上的新建文件夹里面,新建MyAnno.java文件 把刚才写的注解的代码粘贴进来。 javac 先编译一下刚才的MyAnno.java文件 生成了MyAnno.class文件 反编译javap 重新生成了这么一个 阅读全文
摘要:
百度百科 @Override , 每个类都直接或者间接继承了Object类 如果不加@Override那么AnnoDemo2就是这个类里面的特有方法 @Deprecated表示方法已经过时了。 有了子女的放show2来替代了旧的方法show1 ,那么就在show1上标注这个方法 这里来调用show1 阅读全文
摘要:
写好参数后,自动生成了 @param a和@param b 把这个类复制到桌面的文件夹上。 把包名删掉。 使用javadoc的命令,抽取这个java文件里面的文档注释 生成了这么一大堆文档 打开index 和jdk8的文档一样 改一下java文件的格式 javadoc重新生成 重新打开index.h 阅读全文
摘要:
student定义sleep方法 用反射+配置文件 定义配置文件 src下new file。新建 加载配置文件。Properties里面有一个load方法,可以加载.properties结尾的配置文件 加载到内存中 获取字节码文件对应的类的加载器,用这个类加载器加载到内存 这样就有了ClassLoa 阅读全文
摘要:
添加一个成员方法。eat方法 确定方法,方法名和参数列表 定义一个有参数的方法 getMethods Person没有父类所以直接继承的就是Object类。输出了Person自己的方法和Object这个父类的的方法 方法支持暴力反射 获取方法的名称 获取类名 输出全类名 阅读全文
摘要:
区分构造方法在于 构造方法的参数 Constructor主要用来创建对象的里面有方法newInstance ...可变参数的形式。 相当于用空参的方式创建一个对象 相当于用空参的方式创建一个对象 空参的简化方式 私有的构造 暴力破解方式 阅读全文
摘要:
声明一个public修饰的成员变量 方便演示一共写四个public修饰的成员变量 只能获取到a。是public修饰的成员变量 getField 抛出异常 能获取到成员变量无非就是 获取值和设置值 Field有get方法 get方法需要传一个Person对象进去 字符串默认是null set方法 重写 阅读全文
摘要:
一共13个方法 阅读全文
摘要:
已经加载内存中 已经有对象名了 Object类有个getClass方法 定义Person类里面name和age两个属性。 生成有参构造 无参构造。getter和setter 还有重写toString方法 Class.forName Class.forName是一个静态的方法 参数传的是一个全类名,包 阅读全文