【发布时间】:2014-01-23 05:07:02
【问题描述】:
考虑以下嵌套类。
class Outerclass {
class innerclass {
}
}
class util {
//how to declare an array of innerclass objects here?
}
【问题讨论】:
标签: java class syntax inner-classes nested-class
考虑以下嵌套类。
class Outerclass {
class innerclass {
}
}
class util {
//how to declare an array of innerclass objects here?
}
【问题讨论】:
标签: java class syntax inner-classes nested-class
您可以像这样声明innerclass 对象的数组。
class util {
Outerclass.innerclass[] inner = new Outerclass.innerclass[10];
}
要实例化它们,您可以在 util 类中执行类似的操作。
void test() {
Outerclass outer = new Outerclass();
inner[0] = outer.new innerclass();
}
【讨论】:
innerclass 数组。您不必初始化数组中的每个元素吗?如果它是像int 这样的原始数据类型,则默认情况下所有元素都将使用0 填充。但在这种情况下,它将是null。所有的数组元素都需要初始化。您刚刚声明并初始化了一个数组,但还没有初始化数组中的元素。
OuterClass outerObject = new OuterClass();
OuterClass.InnerClass innerArray[] = new OuterClass.InnerClass[3];
// Creating Objects of Inner Class
OuterClass.InnerClass innerObject1 = outerObject.new InnerClass();
OuterClass.InnerClass innerObject2 = outerObject.new InnerClass();
OuterClass.InnerClass innerObject3 = outerObject.new InnerClass();
// Adding the Objects to the Array
innerArray[0] = innerObject1;
innerArray[1] = innerObject2;
innerArray[2] = innerObject3;
【讨论】: