Java泛型_下限_super

super和extends用法基本一样,就是能够增加子类对象,另外指定的是自身或父类,看例子:

package com.ws.generic;

import java.util.ArrayList;
import java.util.List;

// 类的继承关系 galaxy - sun、bluestar 
//                       |
//                      earth

class galaxy{	
}

class  bluestar extends galaxy{	
}

class sun extends galaxy{	
}

class earth extends sun{	
}

/*
 * * super : 泛型的下限  >= 即父类或自身
 * 1、一般用于 下限操作
 * 2、能够添加数据上面,不能添加父对象
 *  
 */

public class testtpf {
	public static void main(String[] args) {
		
		// 调用方法
		List<galaxy> list = new ArrayList<galaxy>();
		test1(list);
		List<sun> list2 = new ArrayList<sun>();
		test1(list2);
		List<earth> list3 = new ArrayList<earth>();
                // 失败,不在范围内
		//test1(list3);	
		
		List<? super galaxy> list4 = new ArrayList<galaxy>();
		test1(list4);		
		
	}
	
	public static void test1(List<? super sun> list){		

		//不能填加父类对象
		list.add(new sun());
		list.add(new earth());
		
		System.out.println(list.get(0));
	}
}
泛型的通配符就是?,extends,super三个,会用就好了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值