集合框架-通過Object轉型問題引入泛型

ZHOU_VIP發表於2017-04-23

package cn.itcast_03;

/*
 * 早期的時候,我們使用Object來代表任意的型別。
 * 向上轉型是沒有任何問題的,但是在向下轉型的時候其實隱含了型別轉換的問題。
 * 也就是說這樣的程式其實並不是安全的。所以Java在JDK5後引入了泛型,提高程式的安全性。
 */
public class ObjectToolDemo {
	public static void main(String[] args) {
		
		ObjectTool ot = new ObjectTool();

		// 正常使用
		ot.setObj(new Integer(27));
		Integer i = (Integer) ot.getObj();
		System.out.println("年齡是:" + i);

		ot.setObj(new String("林青霞"));
		String s = (String) ot.getObj();
		System.out.println("姓名是:" + s);

		System.out.println("---------");
		ot.setObj(new Integer(30));
		// ClassCastException
		String ss = (String) ot.getObj();
		System.out.println("姓名是:" + ss);
	
     }

}


package cn.itcast_03;

public class ObjectTool {
	private Object obj;

	public Object getObj() {
		return obj;
	}

	public void setObj(Object obj) { 
		this.obj = obj;
	}
}



相關文章