public class ArrayIntList {
public static final int DEFAULT_CAPACITY = 3;
private int[] elementData;
private int size;
// Constructs an empty list of a default capacity.
public ArrayIntList() {
this(DEFAULT_CAPACITY);
}
// Constructs an empty list with the given capacity.
// Precondition: capacity >= 0
// Throws an illegal argument exception if capacity is negative.
public ArrayIntList(int capacity) {
if (capacity <= 0) {
throw new IllegalArgumentException("capacity must be positive: " + capacity);
}
elementData = new int[capacity];
size = 0;
}
比如说这一段代码,为什么field里面变量的初始化要在Constructor里面完成?
我试过直接在field里面初始化,工作是正常的
JAVA的官方解释是:http://docs.oracle.com/javase/tutorial/java/javaOO/initial.html
我也没怎么看明白,请高人解释一下。
还有一个问题:field里面的所有变量都必须初始化么?String的初始化怎么写?
public static final int DEFAULT_CAPACITY = 3;
private int[] elementData;
private int size;
// Constructs an empty list of a default capacity.
public ArrayIntList() {
this(DEFAULT_CAPACITY);
}
// Constructs an empty list with the given capacity.
// Precondition: capacity >= 0
// Throws an illegal argument exception if capacity is negative.
public ArrayIntList(int capacity) {
if (capacity <= 0) {
throw new IllegalArgumentException("capacity must be positive: " + capacity);
}
elementData = new int[capacity];
size = 0;
}
比如说这一段代码,为什么field里面变量的初始化要在Constructor里面完成?
我试过直接在field里面初始化,工作是正常的
JAVA的官方解释是:http://docs.oracle.com/javase/tutorial/java/javaOO/initial.html
我也没怎么看明白,请高人解释一下。
还有一个问题:field里面的所有变量都必须初始化么?String的初始化怎么写?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货