0. java language中,对于任意type的数组定义都会自动生成和这个数组对应的一个class。比如有一个定义int[],那么就意味着你定义了一个这样的类:
class intArray {
private List elements = null;
public intArray(int length) {
elements = new ArrayList(length);
}
......
}
同样,当你定义一个user-defined class type的数组的时候,java compiler也会自动为你生成相对应的一个class,不如说EventDefinition[],其对应的class为EventDefinitionArray;
1. EventDefinition[] eventDefs;
这个declaration定义了一个object,其type为EventDefinitionArray;
2. eventDefs = null;
这个declaration和其他的object赋值没有两样,表示eventDefs被赋值为null;
3. eventDefs = new EventDefinition[0];
你可以这样认为:eventDefs = new EventDefinitionArray( 0);