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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

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



评分

参与人数 1黑马币 +3 收起 理由
一枝梨花压海棠 + 3 赞一个!

查看全部评分

2 个回复

倒序浏览
这个好,一直对泛型都很模糊,这个很清楚
回复 使用道具 举报
很详细~~~~~~~~~~~~~~~~~~~~~~~~~~~~·
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马