美文网首页
[Java]泛型,枚举与注解

[Java]泛型,枚举与注解

作者: 芒果奶油卷 | 来源:发表于2019-10-11 17:32 被阅读0次

    #1.泛型

      1.对象实例化时不指定泛型,默认为:Object。 

      2.泛型不同的引用不能相互赋值。 

      3.加入集合中的对象类型必须与指定的泛型类型一致。 

      4.静态方法中不能使用类的泛型。 

      5.如果泛型类是一个接口或抽象类,则不可创建泛型类的对象。 

      6.不能在catch中使用泛型 

      7.从泛型类派生子类,泛型类型需具体化 

      4.泛型与继承的关系 

      A类是B类的子类,G是带泛型声明的类或接口。那么G(A)不是G(B)的子类! 

      5.通配符:? 

      A类是B类的子类,G是带泛型声明的类或接口。则G(?) 是G(A)、G(B)的父类! 

      ①以List(?)为例,能读取其中的数据。因为不管存储的是什么类型的元素,其一定是Object类的或其子类的。 

      ①以List(?)为例,不可以向其中写入数据。因为没有指明可以存放到其中的元素的类型!唯一例外的是:null 

      6*.  List(? extends A) :可以将List(A)的对象或List(B)的对象赋给List(? extends A)。其中B 是A的子类 

      ? super A:可以将List(A)的对象或List(B)的对象赋给List(? extends A)。其中B 是A的父类 

      #### 8.枚举与注解

      一、枚举类

      1.如何自定义枚举类。 枚举类:类的对象是有限个的,确定的。 

      1.1 私有化类的构造器,保证不能在类的外部创建其对象 

      1.2 在类的内部创建枚举类的实例。声明为:public static final 

      1.3 若类有属性,那么属性声明为:private final 。此属性在构造器中赋值。 

      2.使用enum关键字定义枚举类 

      2.1其中常用的方法:values()  valueOf(String name); 

      2.2枚举类如何实现接口: 

      ①让类实现此接口,类的对象共享同一套接口的抽象方法的实现。 

      ①让类的每一个对象都去实现接口的抽象方法,进而通过类的对象调用被重写的抽象方法时,执行的效果不同 

      二、注解Annotation 

      1.JDK提供的常用的三个注解 

      @Override: 限定重写父类方法, 该注释只能用于方法 

      @Deprecated: 用于表示某个程序元素(类, 方法等)已过时 

      @SuppressWarnings: 抑制编译器警告 

      2.如何自定义注解 

      以SuppressWarnings为例进行创建即可: 

      @interface MyAnnotation 

      3.元注解:可以对已有的注解进行解释说明。(对其他注解添加注解)   

      Retention:SOURCE,CLASS(默认),RUNTIME :被修饰的注解的生命周期   

      Target:指明被修饰的注解能用于修饰哪些程序元素   

      Documented:javadoc(Retention必须设置为RUNTIME) 

    相关文章

      网友评论

          本文标题:[Java]泛型,枚举与注解

          本文链接:https://www.haomeiwen.com/subject/trebtqtx.html