4.8泛型

泛型

泛型是程序设计语言的一种技术,泛化技术可以将程序中的数据进行参数化,能减少代码复写的同时,还使程序设计能够更加抽象,即:不需要事先确定好数据的类型。这一优点在实现参数任意化时,能帮助程序员避免多数因类型转换而出错误的情况。


小结

泛型类

①泛型类中同样可以使用内置及自定义的数据类型。
②在创建实例对象时绑定数据类型。
③在泛型类中,类型参数的继承关系并不能迁移到泛型类中。(涉及类型擦除)

泛型接口

①用普通类实现泛型接口时,需指定接口的类型参数。
②用泛型类实现泛型接口时,该类的类型参数必须大于等于接口的泛型参数,且其中包含与接口同名的类型参数。

泛型方法

①调用泛型方法时,编译器能自动推导出参数的类型,故使用方法与普通函数一样。
②值得一提的是,要想使用编译器的自动推导,方法的参数列表和返回值,需使用类型参数。
③泛型方法的类型参数,其作用域仅限于方法体内,即:在方法体外,不能参与其他变量和方法的定义。

通配符

假设有一个类A,如果希望用一个通用的引用来指代各种A<T>的对象,则可以使用通配符“?”,即:A<?>,可以将其看作所有A泛型类的父类。

泛型参数的限制

假设有一个类A,<? extends A>用来限制类型参数的上限,表示类型参数可以是A及其子类。
<? super A>用来限制类型参数的下限,表示类型参数可以是A及其父类。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

几绪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值