泛型的知识

多态有助于减少重载的方法******加粗样式

注意泛型主要用于集合类,接口等
在这里插入图片描述
因为其元素不确定,可以是任意的,得是调用时才知道,所有用了泛型
在这里插入图片描述
不用泛型得问题(原先不用泛型默认Object)
1.类型不安全(使用后编译时就会出现类型检查)
2.强转时候出现类型转化异常
在这里插入图片描述

一 常见知识
1.泛型不能用基本数据类型,得用他得包装类
2.在实例化集合类时,可以指明具体的泛型类型
3.指明完以后,在集合类或接口中凡是定义类或接口时候、,内部结构(方法,构造器,属性)使用类的泛型的位置,都指定为实例化时泛型的类型
add(E e)------>add(Integer e)
4实例化时,没有指明泛型,则默认为java.lang.object
二 泛型方法
泛型方法是可以声明为静态,原因:泛型参数在调用方法时确定而非实例化时确定
在这里插入图片描述
二 自定义泛型类 泛型接口,泛型方法
泛型类
在这里插入图片描述
1).子类继承父类泛型类有两种
1.不需要泛型类。可直接赋类型
public class SubOrder extends Order{
}
2.需要泛型类
public class SubOrder extends Order{
}
2)泛型类有多个参数,此时将多个参数一起放到尖括号<E1,E2,E3>
3.
在这里插入图片描述
4.
泛型数组的创立
在这里插入图片描述
5.在这里插入图片描述

在这里插入图片描述
泛型方法
在这里插入图片描述
三继承方面体现
在这里插入图片描述
Object与String有子父类关系
但是List与List没有子父类关系
五 通配符
用通配符?实现多态
List list1=null;
List list2=null;
List<?> list=null;
list=list1;
list=list2;

在这里插入图片描述
对于List<?>就不能向其内部添加数据除了Null之外(但可以赋值指向 list=list3)
允许读取数据,读取的数据为Object
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
list1(new Student)//编译不过
?=new Student;不符合多态,由于只能子类赋给父类
list2(new Student)//
由于?super Person
所以?=new Student;可以
多态主要是为了减少重载的方法数量

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值