java 里类变量有 ArrayList,那么构造函数还用new一下吗?还是default的构造函数就已经建好了ArrayList?

2025-05-10 23:37:45
推荐回答(1个)
回答(1):

1.你已经自己写了构造函数了,虚拟机就不会再给你提供默认的构造函数了。所以default的构造函数就已经建好了ArrayList这个不成立。
2.你上面已经定义了一个private ArrayList vehicles;;在后面的构造函数里面又定义了一个一样的ArrayList vehicles=new ArrayList();,这里面会出现变量相同,所以在构造方法里面改为vehicles=new ArrayList();就行了。
3.compiler因为它说vehicles可能从未被使是因为你只是创建了一个ArrayList对象vehicles,但是你还没有使用这个对象,这个在myeclipse或者eclipse里面会有一个黄色的警告,但是并没有错。你下面使用vehicles进行操作的时候这个警告就不会出现了。有这个警告主要是因为你创建了不用,会浪费内存空间,所以myeclipse会提示你不要浪费内存空间。