Java 泛型

来源:互联网 发布:c多核编程 编辑:程序博客网 时间:2024/05/21 08:33
泛型(generic)泛型<>;规定List定义的容器只能存储某种类型的元素。不用泛型的话是什么类型的元素都可以插入,因为插入集合是忽略其类型,把它看成为Object类型,取出时需要强行转换对应的类型。编写带有泛型的集合List<Course> courseToSelect; 在构造方法中(实例化的时候也可以不在构造方法,直接实例就可以)this.courseToSelect=new ArrayList<Course>(); //带有泛型-Course的List类型属性就创建了泛型集合中,不能添加泛型规定的类型以及其子类型以外的对象,否则会报错。运用了泛型的话,用foreach语句时 存储变量应该为泛型的类型。for(Course a:courseToSelect),不必再用Object取出再强转,因为已经规定容器里装的都是Course类型。
1、泛型集合中可以添加泛型对象实例,也可以添加泛型子类型的对象实例2、泛型不能是基本类型的(如:int long boolean),必须是引用类型3、如果必须使用基本类型,则需要通过使用包装类实现(如:Integer)
tips:
定义子类型的时候要在父类型中添加一个无参的构造方法,否则出错,因为调用子类型的构造方法时,系统会默认调用父类的无参构造方法(super();)。
0 0