黑马程序员技术交流社区

标题: 泛型的一些基本概念和使用 [打印本页]

作者: 江江会回来的    时间: 2015-9-21 23:26
标题: 泛型的一些基本概念和使用
1、概述
     泛型是一种把明确类型的工作放在了创建对象或者调用方法时候才去明确的特殊的类型
     泛型就相当于一个预定义类型
2、好处
     A、解决了黄色警告线问题
     B、把系统运行期间的异常提前到了编译期间
     C、优化了程序设计,不需要做强制转换了

3、不足
     泛型传入的只能是引用类型

3、泛型的定义
     A、在类上定义
          //在类上定义一个泛型
          public class MyArrayList<T> {

          }
           //在类上定义两个泛型
          public class MyArrayList<T, S> {

          }         

          //在类上定义两个泛型,且第二个类型必须是第一个类型的子类
          public class MyArrayList<T, S extends T> {

          }

          说明:
               T,S是名字,可以随意起,该处定义的泛型可以在本类的任意地方使用
               父类上定义的泛型不能被子类继承

      B、在方法上定义
          //在方法上定义一个泛型
          public <M> void show(M m){
          }
          //在方法上定义两个泛型
          public <M, S> void show(M m, S s){
          }
           //在方法上定义两个泛型,且第二个泛型必须事第一个泛型的子类
          public <M, S extends M> void show(M m, S s){
          }

          说明:
               T,S是名字,可以随意起,该处定义的泛型可以在该方法的任意地方使用

     C、在接口上定义泛型
         和在类上定义一样

3、泛型的使用
     可以在继承关系,实现关系,创建对象时使用
     在使用过程中,父类或父接口如果没有明确给定类型,那么子类必须定义泛型而且需要和父类或父接口的泛型名字一样(掌握)




作者: wangzhuo    时间: 2015-9-21 23:47
这个好,一直对泛型都很模糊,这个很清楚
作者: 一枝梨花压海棠    时间: 2015-9-22 00:00
很详细~~~~~~~~~~~~~~~~~~~~~~~~~~~~·




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2