这里面的courses是作为一个属性值还是做一个对象名还是什么

来源:4-9 学生选课---应用泛型管理课程 Ⅰ

qq_慕婉清0460615

2020-04-29 12:23

package com.imooc.collection;import java.util.ArrayList;import java.util.List;//带有泛型的course,list属性public class TestGeneric {        public List<Course> courses;//泛型的写法public List<属性>属性值         public TestGeneric() {//构造器没有类名class,没有返回值类型      this.courses=new ArrayList<Course>();//直指当前的属性值=新的 数组列表<属性>();            }    //测试添加,这是一个方法,所以需要一个返回值    public void Testadd() {                //ts1只是用来保存后面值("1", "大学语文")的保存对象,主对象是写在构造器当中的this.后面的,主对象来操作比如增加(保存的对象名)删除(保存的对象名)等,        Course ts1 = new Course("1", "大学语文");        courses.add(ts1);        //泛型集合中不能add添加一些其他类型的内容,否则会报错       // courses.add("能否添加一些奇怪的东西呢");,        Course ts2 =new Course("2", "java基础");        courses.add(ts2);            }    //测试循环遍历    public void testForEach() {        for (Course ts2:courses) {//泛型可以少些一步类型转换           System.out.println(ts2.ID+ts2.Name);         }    }    public static void main(String[] args) {        TestGeneric TG =new TestGeneric();        TG.Testadd();        TG.testForEach();    }}

这里面的courses是作为一个属性值还是做一个对象名还是什么

写回答 关注

1回答

  • 慕粉1922375890
    2020-05-24 20:41:51

    对于TestGeneric类来说,courses是他的一个属性;但是这个属性的类型是List的,就是父接口List的引用指向子类ArrayList的对象;又通过泛型规定了courses里的元素类型必须是Course及其子类的对象。可以这样简单理解:courses是一个数组列表,它的元素必须是Course类及其子类的对象。

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题