泛型

泛型

 

泛型java jdk1.5新特性

   好处1.将运行时的错误提前到编译前

         2.避免无谓的强制类转换   

自定义方法泛型:自定义泛型就是一个数据类型的占位或者一个数据类型变量 一般用T或E来做占位的符号

方法泛型的格式:

  <占位符> T:定义一个泛型

 如果传进去的是基本数据类型:接收的时候改用它的包装类来接收。

 * int    ----> Integer;

 * short  ----> Short;

 * long   ----> Long;

 * double ----> Double;

 * float  ----> Float;

 * byte  -----> Byte;

 * boolean  ----> Boolean;

 * char   -----> Charactor;

泛型方法的使用注意点:

   1.泛型方法中自定义一个泛型数据类型是在实际参数传递时确定的。

   2.泛型所用的标识符需要符合标识符的命名规范,一般习惯用大写字母来表示。

 需求:将一个集合中的元素由小写转化为大写

 

     ArrayList<String> list = new ArrayList<String>();

     list.add("aa");

     list.add("bb");

     list.add("cc");

     list.add("dd");

     //list.add(123); // 运行的时候报错的

     for(int i = 0; i < list.size(); i++) {

      String str = list.get(i);

      System.out.println(str.toUpperCase());

     }

 

自定义数组的工具类

定义格式:

Class 类名<声明自定义的泛型> {}

泛型类的使用注意点:

     1.泛型类上定义的自定义泛型的类型是在创建这个类对象时确定的。

     2.如果一个自定义泛型的类,在创建对象时没有指定,默认为Object.

     3.静态方法是不能使用类上的自定义的泛型,必须在方法上面定义一个泛型。

泛型接口:

   泛型接口的定义方式:

     interface 接口名<声明自定义的泛型> {}

     接口泛型的使用注意点:

     1.接口上自定义的泛型在实现该接口的时候被指定的

     2.如果实现接口是没有指定接口,那么就会默认为Object

     3.需要在创建接口实现类对象是指定数据类型,格式为:

        class 类名<声明自定义泛型> implements 接口<声明自定义泛型>

    

posted @ 2016-11-30 16:58  彬之华666  阅读(135)  评论(0编辑  收藏  举报