5 java inheritance interface multiple-inheritance
我目前正在尝试实现以下树状结构(即男人、女人、儿童、特殊人、特殊女人、特殊儿童)。有没有一种更简洁/替代(更少重复代码)的方法来处理它?
public class Person {
int hat;
int one_glove;
}
public class Man extends Person {
int coat;
int shorts;
}
public class Woman extends Person {
int coat;
}
public class Child extends Person {
int shorts;
}
public class SpecialMan extends Man {
int second_glove;
}
public class SpecialWoman extends Woman {
int second_glove;
}
public class SpecialChild extends Child {
int second_glove;
}
Run Code Online (Sandbox Code Playgroud)
我在想的是让 Person 类包含所有变量,然后简单地为它设置多个构造函数-> 链接到每个特定的对象类型?
public class Person{
int hat;
int one_glove;
int coat;
int shorts;
int second_glove;
public Person(int coat;int shorts; int hat; int one_glove;){} //Man
public Person(int coat;int hat; int one_glove;){} //Woman
public Person(int coat;int shorts; int hat; int one_glove; int second_glove;) {} //SpecialMan
etc...
}
Run Code Online (Sandbox Code Playgroud)
小智 0
只需继承 person 类并使用 super
> public class Person{
int hat;
int one_glove;
int coat;
int shorts;
int second_glove;
public person(int a,int b,int c,int d,int e){
hat = a;
one_glove = b;
coat = c;
shorts = d;
second_glove = e;
}
}
class man extends person(){
man(int a,int b,int c,int d,int e){
super(a,b,c,d,e);
}
}
Run Code Online (Sandbox Code Playgroud)