java基础知识,
List list ;
list= new ArrayList();
List list;这一行做了什么?在内存中为list开辟空间了吗?
如果已经开好了,那怎么知道到底是要new一个ArrayList还是LinkedList呢
java基础知识,
List list ;
list= new ArrayList();
List list;这一行做了什么?在内存中为list开辟空间了吗?
如果已经开好了,那怎么知道到底是要new一个ArrayList还是LinkedList呢
List list;这句并没有为list开辟空间
这句只是实例了一个类对象 这个对像名叫list
要想给对象开辟空间必需用new去在内存上分配空间
List list ; //List 是个指针,声明的list变量 只是一个随机指向任何地方的指针。
list= new ArrayList(); 分配一块ArrayList类型定义的内存地址。并让list指针指向这块空间。
int a ; //分配了一块int大小的内存空间。
a = 3; //改变些内存空间的值。
List list是声明一个引用,相当一个指针,
new ArrayList()是声明一个空间,
而list是指向new ArrayList()的引用。
具体实例只能实例实现了List接口的类,
而考虑是用ArrayList或LinkedList,得看你自己的需求
List list;是在栈区开辟一个空间放list引用,并没有创建对象所以不知道ArrayList还是LinkedList
当你list= new ArrayList(); 就创建了ArrayList对象。并且把开始创建的list引用指向这个对象
ArrayList和LinkedList都是List的实现类。