您的位置:首页 > 编程语言 > Java开发

Java泛型反射机制(一)

2016-04-02 15:35 381 查看
/**
*
* @author Administrator
* 功能:泛型的必要性(参数化类型)(安全简单)
*/
package com.test;
import java.util.*;

public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

//        ArrayList al = new ArrayList();
//        //创建一只狗
//        Dog dog1 = new Dog();
//        //放入到集合中
//        al.add(dog1);
//该句会报错,ArrayList返回的是Object类型的必须强转或者使用泛型
//Dog temp2 = al.get(0);
//        //取出
//        //强制类型转换时要求开发者对实际参数类型可以预知的情况下进行的,编译器不提示错误
//存在安全隐患
//        //Dog temp = (Dog)al.get(0);
//
//        //编译器不报错,存在安全隐患,报类型转换异常
//        //Cat temp = (Cat)al.get(0);

//泛型的好处是在编译时检查类型的安全
//使用泛型不会报错
ArrayList<Dog> al = new ArrayList<Dog>();
Dog temp = al.get(0);
}
}

class Cat
{
private String color;
private int age;
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}

}

class Dog
{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: