java泛型总结

1、泛型的菱形语法

Apple<String> app = new Apple<>("xxbb");

2、定义泛型接口、类   使用形参

public class Apple<T>
{
    private T info;
    public Apple(){}
    public Apple(T info) {
        this.info = info;
    }
    public void setInfo(T info) {
        this.info = info;
    }
    public T getInfo() {
        return  this.info;
    }
    public static void main(String[] args) {
        Apple<String> app = new Apple<>("xxbb");
        System.out.println(app.getInfo());
        Apple<Double> appInt = new Apple<>(4.4);
        System.out.println(appInt.getInfo());
    }
}

3、从泛型类派生子类

使用这些接口和父类时,不能包含类型形参。

public class A extends Apple<String>


4、泛型的设计原则是,代码编译时没有出现告警,就不会遇到运行时ClassCastException


5、类型通配符

List<?>

设定类型通配符的上限

List<? extends xxx>   list后的类型是xxx的子类型就可以

设定形参上限

List<T extends Number & java.io.Serializable>


6、泛型方法

static <T> void test(T[] a, Collection<T>c)



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值