Java工具类--泛型(一)

/**
 * 泛型基本使用:泛型是jdk1.5以后出来安全机制,避免了强转。
 * 1,成员变量中的体现。
 * 2,成员函数中体现。
 * 3,实体类中的体现。
 * 4,接口中的体现。
 */
//泛型类
class Xbos{
	//泛型成员变量
	private T t;
	Xbos(T t){
		this.t = t;
	}
	public T getT() {
		return t;
	}
	public void setT(T t) {
		this.t = t;
	}
	public void outs1(){
		System.out.println("当前对象类型是:"+
	    t.getClass().getTypeName()+"数据为:"+this.t);
	}
	//泛型定义在方法体上面
	public  void outs2(Ty ty){
		System.out.println(ty);
	}
	//注意:xBos中T是定义在方法体中的泛型变量。
	//而outs2中是定义在方法体中,他们两个是不相同。
}
//泛型接口
interface XBoss{
	void display(T t);
}
class XBossImps implements XBoss{
	public  void display(Ty t){
		System.out.println("泛型接口:"+t);
	}
}

public class GenericDemo {

	public static void main(String[] args) {
		Xbos xb1 = new Xbos("张三");
		Xbos xb2 = new Xbos(28);
		XBossImps xbt = new XBossImps();
		
		System.out.println("泛型定类上面:");
		xb1.outs1();
		xb2.outs1();
		System.out.println("泛型定义方法体上面:");
		xb2.outs2("小明");
		xb2.outs2(new Integer(88));
		System.out.println("泛型定义方法体上面:");
		xbt.display("香港");//调用明确类型
	}
}
运行结果:
泛型定类上面:
当前对象类型是:java.lang.String数据为:张三
当前对象类型是:java.lang.Integer数据为:28
泛型定义方法体上面:
小明
88
泛型定义方法体上面:
泛型接口:香港

你可能感兴趣的:(tool)