注解和反射

注解,反射,加载器

注解

  1. annotation
  2. 注释 comment
  3. 常见注解
  4. 从jdk5.0开始引进的技术
  5. 注解的作用
  • 和comment一样

  • 可以被其他程序读取 ,

  • 检查跟约束

     6. 格式
    
  • @SupressWarmings(values=“unchecked”)

    1. 通过反射机制对注解进行访问
      8. 可以附加在package,class,method,field等上面,作为辅助信息
      9. 注解都是定义在java.lang包中
内置注解

常见内置注解

  1. @Override:表示一个方法声明打算重写超类中另一个方法声明
  2. @Deprecated:表示不鼓励使用该元素
  3. @SuppressWranming:(需要添加参数,才能使用),用来抑制编译时的警告信息
元注解
  1. 元注解的作用就是负责注解其他注解,java定义了4个标准的meta-annotation类型,它们被用来提供给其他annotation类型说明
  2. @Target:描述注解的使用范围
  3. @Retention:表示需要在什么级别保存该注释,用用于描述注释的生命周期(SOURCE<CLASS<RUNTIME),超过了就没用了
  4. @Dcument:说明该注释将被包含在javadoc中
  5. @Inherited:说明子类可继承父类中的该注释

反射Reflection

静态语言和动态语言
  1. 动态语言:某一类在运行时可以改变其结构的语言,
  2. 静态语言:运行时结构不可变
定义

反射:是java被视为动态语言的关键,反射机制允许程序在执行过程借助于Reflection API获得任何内部类的内部信息,并能直接操作任意对象的内部属性及方法

重点

  1. 一个类在内存只有一个Class对象,
  2. 一个类被加载后,类的整个结构都会被封装在Class对象中
Class类
  1. Class本身是一个类
  2. Class对象只能右系统创建
  3. 一个加载类在jvm中只会有一个Class实例
  4. 每个类的实例都会记得自己是由哪个Class实例所生成
  5. 通过Class可以完整地得到一个类中所有被加载的结构
获取Class类的实例

在这里插入图片描述

在这里插入图片描述

  • 只要元素类型和维度一样就是同一个Class

java内存

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值