java--泛型

java泛型用 <> 表示 常用于类 常用于接口 里面字母自定义
<>内可以写任意引用型类型
以ArrayList的为例 在new时:

ArrayList<String> arr=new ArrayList<String>();

这样在使用Array时集合里面只能放String 类型的数据 并且在使用方法时
不用强转 且可以调用String的方法
如:public void text(ArrayList<String> arr){

	 		arr.lengh()//可以调用String的方法 获取长度   若不使用泛型 则不可以调用String的方法
	 }

泛型类的定义:public class 类名<E>{}
泛型方法的定义:public void 方法名(E e){} public E 方法名(){ return E }
泛型的通配符:? 只能做方法的参数
如:public static void show(Arrary<?> arr){ }//<>里面可以传任何类型的参数
或:public static void show(Arrary<? extends FanXing<String> arr){}//<>里面只能传继承了FanXing这个接口并且参数类型为String的 对象 注意: 实现也是继承的一种
*

  • 什么是泛型通配符?
  •  ?  代表了未知数据类型
    
  •  泛型E可以在创建对象中使用  例如: new ArrayList<String>();
    
  •  ?不可以的
    
  •  ?  是作为  不知道类型的时候使用 方法参数
    
  •  ? extands  类名    只要符合指定继承关系 都接收  
    
  •    对未知类进行了限定
    
  •  ? super 类名  
    
  •  注意:泛型是没有继承概念 ------若需要一个String类型  传Object类型错误
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值