JavaSE-注解与反射

1、内置注解

  @Override  重写

  @Deprecated    过期,不建议使用

  @SuppressWarnings  抑制警告

2、元注解

  元注解是注解其他注解的注解

  @Target(value=' ...')  表示在什么范围内有用

  @Retention  表示注解需要在什么级别保存该注释信息  SOURCE<CLASS<RUNTIME

  @Document  表示该注解将被包含在javadoc中

  @Inherited  表示子类可以继承父类中的注解

3、自定义注解

  (public) @interface 注解名{定义内容}

4、静态语言vs动态语言

  动态语言:是一类在运行时可以改变其结构的语言,如python,C#、js、PHP

  静态语言是运行时结构不可变的语言,如Java,c,c++

  Java又可以称之为准动态语言,因为Java中的反射机制可以使其成为动态语言

5、Class

  一个类只有一个Class对象

  (1)创建类的Class的方式

 1 public class Test{
 2     //测试Class类的创建方式有哪些
 3     public static void main(String[] args) {
 4         //方式1:通过对象.getClass()获得
 5         Person person1 = new Person();
 6         Class> c1 = person1.getClass();
 7         
 8         //方式2:通过Class.forName("包名")
 9         Class c2 = Class.forName("com.kuang.Student");
10         
11         //3、通过类名。class获得
12         Class c3 = Person.class;
13         
14         //c1.hashCode(), c2.hashCode(), c3.hashCode()一样,表示只有一个Class
15         
16     }
17 }

  (2)哪些类型可以有class对象

      class类/infterface/数组[]/...

      注意:只要类型一样,就是一个Class,hashcode都是一样的

      

 

上一篇:JavaSE学习Day6—3分钟Java容器的简述(上)


下一篇:JAVASE知识点梳理