A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 唯我独赞mo 中级黑马   /  2015-11-10 23:23  /  587 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1)泛型的定义:将对象的类型作为参数,指定到其他类或者方法上,从而保证类型换的安全性和稳定性,这就是泛型。反省的本质就是参数化类型。
      反型的定义语法:类1或者接口<类型实参>对象=new 类2<类型实参> 例如:
   ArrayList<String>list = new ArrayList<String>();表示创建一个ArrayList集合,但规定该集合存储的元素类型必须为String类型
   2)泛型在集合中的应用:
      泛型集合在创建集合对象时指定集合中元素的类型,从集合中取出元素时无须进行类型强制转换,并且如果把非指定类型对象放入集合,会出现编译错误。
   3)深入理解泛型:
        反型的本质就是参数化类型,参数化类型的重要性在于允许创建一些类、接口和方法,其所操作的数据类型被指定为参数。
       参数化类型:参数化类型包含一个类或者接口,以及实际的类型和参数列表
       类型变量:是一种非限定性标识符,用来指定类、接口或者方法的类型。
   4)定义泛型类、泛型接口和方法
      a、泛型类:就有一个或者多个类型变量的类
        定义泛型变量的语法:访问修饰符class className<TypeList>
         在语法中:TypeList表示类型参数列表,每个类型变量之间以逗号隔开。
        创建泛型类实例的语法:new className< TypeList >(argList)在语法中:
                 TypeList表示定义的类型参数列表,每个类型变量之间以逗号分隔。
                argList表示实际传递的参数列表,每个类型变量之间同样以逗号隔开。
   5)泛型接口:拥有一个或者多个类型变量的接口
       定义泛型接口的语法:访问修饰符interface interfaceName<TypeList>
     在语法中:TypeList表示有逗号隔开的一个或者多个类型参数列表。
      例如:public interface TestInterface<T>{public T print(T t)}
      泛型类实现泛型接口的语法:
访问修饰符 class className< TypeList > implements interfaceName< TypeList >
   6)泛型方法:带有类型参数的方法。
          注意:定义泛型方法与方法所在的类、或者接口是否是泛型类或者泛型接口没有直接的联系,也就是说无论是泛型类还是非泛型类,如果需要就可以定义泛型方法。
定义泛型方法的语法:访问修饰符<类型参数>返回值 方法名(类型参数列表)
  例如:public <String> void showName(String s){   }在泛型方法中,类型变量 是放置在访问修饰符与返回值之间。
7)从泛型类派生子类
  面向对象的特性同样适用于泛型类,所以泛型类也可以继承。不过,继承了泛型类的子类,必须也是泛型类
继承泛型类的语法:class 子类<T> extends 父类<T>{   }

2 个回复

倒序浏览
学习中
回复 使用道具 举报
总结很好哇,要是补上静态方法的泛型就全乎了;
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马