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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yangshaoqiang 中级黑马   /  2015-10-27 23:51  /  286 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

泛型:
        generic .
        1. 安全机制.
                好处:
                        1.直接将运行时出现的异常提前至了编译时期.
                        2.取出集合中的元素时,不用在向下转型了.
        2.泛型方法
                非静态泛型方法: public <T> 返回值类型  函数名(参数列表){
                              }
                              T 可以用在什么地方?
                                      1. 可以出现在参数列表中.
                                      2. 可以出现在方法的返回值类型.
                              T 只是一个占位符,可以是其他的单词...
                              注意: 泛型方法,一定要先声明-> <T>,才可以使用.
                T 倒是是什么类型.
                        只有调用方法时,才能确定...
                静态泛型方法: public static <T> 返回值类型  函数名(参数列表){
                             }
                对于如果一个类中有很多的泛型方法,可以统一在类上声明. 类中的所有的非静态方法,都可以使用这个泛型声明,但是静态方法不能使用...
                静态方法无法使用到类上声明的泛型的.
        3.泛型类
                class 类名<占位符>{
                       
                       
                }
                当类中的较多的方法使用到泛型时,可以直接在类上声明.
                泛型类中的类型,什么时候才能确定?
                1. 当创建泛型对象时,可以确定.
                        情况一: 创建泛型类对象,没有明确泛型类型->Object
                        情况二: 创建泛型类对象,明确了具体的泛型类型->
                        类名 <类类型>  对象名=new 类名<类类型>();
                        此时该类中,使用到类上声明的泛型的方法,类型全部都确定了.
                应用场景:
                        ArrayList .  
                        LinkedList 都是这样子的.
        4.泛型成员
               
        5.泛型继承.
                父类是一个泛型类.
                子类继承父类.
                        会有什么样的变化?
        5.泛型接口.
                接口是一个泛型接口.
                实现类实现了接口.
                        该怎么处理呢?
        6.泛型通配符.

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马