Java的注解,反射和框架

96 阅读2分钟

一、注解

1.概念

注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便地使用这些数据

2.常见注解

@Override

@Deprecated

@SuppressWarnings

3.注解部分

@interface + 注解名称

@Target : 注解的作用域

@Retention : 注解的生命周期

4. 元注解

@Target

用于标明注解的作用范围

@Retention

用于标明注解的生命周期

@Documented

用于标明该注解将会被包含在javadoc中

@Inherited

用于标明子类可以继承父类的该注解

5. 自定义注解

二、反射机制

1. 概念。

  • 反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法
  • 加载完类之后,在对内存的方法去中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透过这个镜子看到类的结构,所以我们形象地称之为:反射
  • 正常方法是引入类,new(); 反射是获得类对象,类对象.new Instance()
  • 优缺点:现动态创建对象和编译,体现出很大的灵活性;对性能有所影响

2. 使用

  • 获得类对象
  1. Class c1 = Class.forName("main.study.day4.User"); // 通过类的全限定类名 
  2. Class c2 = User.class;  // 通过类名
  3. Class c3 = new User().getClass();// 通过对象的getClass()方法获得Class对象
  • 通过反射获得类的信息
  • 通过反射获得类的对象
  1. 通过newInstance()方法,无参数
  2. 获得构造方法,获得对象
  • 通过反射调用类的方法
  • 通过反射设置属性值
  • 通过获得注解信息

三、框架

框架中通过注解来代替XML,properties 文件,然后java利用发射机制来获取这些注解信息