泛型小结

1.泛型方法

当需要用的不明确的数据类型时,可以用泛型
public 泛型返回值类型 函数名( 泛型 变量名)
具体方法也可以用泛型申请对象,具体泛型对应什么,在使用时定义

2.泛型类

1.在类中具体对应的方法前面定义泛型,在方法中就能用泛型
public < T >void reverse(T[] arr)
2.在类之前直接定义泛型,下面就能直接用了(class A< T >)
(注意:静态方法不能使用泛型)
定义泛型:
1.在创建对象时定义泛型(例:A< String > a = new A< String >();)
2.在创建对象时也可以不定义泛型类型,这时默认为Object

3.泛型接口


interface Inter< T > {
void print(T t);
}
类似类使用泛型,在接口名后面定义泛型,在接口方法中可以使用


在实现泛型接口时有两种情况
1.知道泛型类型


class MyInter2 implements Inter< String > {
void print(String t){};
}
知道泛型类型时直接把接口中的泛型改写就行,但下面的实现方法中不能再使用泛型,必须使用具体的已定义类型


2.实现时仍然不明确实现类型


class MyInter2< T > implements Inter< T > {
void print(T t){};
}
实现时在本身的方法中也要定义一次泛型,则下面实现接口类时也可以使用泛型


(注意:定义泛型时,在方法中定义泛型,在方法名前面,在类或者接口中定义时在类名或接口名后面)

4.泛型通配符

定义一个方法在接收对象时使用
?extends E: 接收E类型或者E的子类型。
? super E: 接收E类型或者E的父类型。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值