在线
客服

发布
需求

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

courses1的引用可以用List也可以用ArrayList 有区别吗?

public class TestStudent {        //《?》可以用List的引用类型和ArrayList类型的引用。有什么区别吗        public ArrayList courses1;        public TestStudent() {                this.courses1 = new ArrayList();

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与2

List是一个接口,而ArrayList是一个类。
ArrayList继承并实现了List,有些属性和方法ArrayList有但是List没有。
引用的话,声明为List,以后可以改为List的其它实现类。

使用道具 举报

publicclassTestStudent{publicArrayListcourses1;publicListcourses11;publicTestStudent(){this.courses1=newArrayList();this.courses11=newArrayList();}}classCourse{}你说的引用应该是这个样子的把,我觉得引用就是一种指向的关系,是可以引用的,至于两个引用有什么区别,就是ArrayList的区别和List的区别了。你看一下,接口和类的关系,我们在实现接口的时候,必须要实现接口里面的所有方法,还有一些别的,但是我们还是可以在我们实现了这个类之后再去添加新的东西。List是ArrayList的规范,但是除了规范我们还可以有别的属于自己的东西。
还有就是接口不可以自己创建对象,不可以通过new关键字来实例,这个你应该知道把?我们可以List list = new ArrayList();
但是不能 List list=new List();这样是错的。而ArrayList list=new ArrayList();创建一对象则保留了ArrayList的所有属性。所以他必须要借助它的实现类来完成。大概就这么多,我感觉这个问题真想说明白的话,真的很多啊,我也搞得不是太明白。
再往下等你学会所有的Java基础自己肯定就明白了,还有后面的反射之类的东西。

使用道具 举报

发新帖
国内首家创新型IT技术需求众包服务平台,软件需求就上天盟网! 立即登录 立即注册