owc*_*wca 1 java arrays constructor
我需要创建类Dog和PurebredDog扩展Dog.问题是Dog可以同时是单个对象和对象数组(Dogs和PurebreedDogs:
Dog pack[]={new Dog(76589,"As","black",18,
"Ann","Kowalsky"),
new PurebreedDog(45321,"Labrador","Elf","black",25,
"Angus","Mati","Barbara","Smith"),
new Dog(102467,"Gamma","brown",89,
"Josh","Coke"),
new PurebreedDog(9678,"York","Theta","brown",8,
"Emka","Figaro","Alice","Cat")};
for(int i=0; i < pack.length; i++)
System.out.println(pack[i]+"\n\n");
Run Code Online (Sandbox Code Playgroud)
如何编写适当的构造函数Dog?你可以这样做:
public Dog(String name, etc){
}
Run Code Online (Sandbox Code Playgroud)
但是如何为狗阵列编写构造函数?
public Dog(Dog[]tab) ?
Run Code Online (Sandbox Code Playgroud)
然后如何回忆它的元素?是pack[]2D阵列?
为了简化事情,一个实例Dog应该引用一只狗.所以你的构造函数看起来应该类似(数据类型只是例子):
Dog(int ID, String color, String name, ...)
Run Code Online (Sandbox Code Playgroud)
PurebreedDog将子类化Dog并提供任何其他构造函数参数(和成员),如breed等.
为了应对多狗,我建议你存储的类的实例中List,HashTable或其他类型的旨在容纳多个元素的数据结构.您使用的实际结构取决于您的要求.
| 归档时间: |
|
| 查看次数: |
306 次 |
| 最近记录: |