如何让 X 类在特定条件下扩展 Y 类?就像我有一个 super 类 Person 并且有一个属性 age,另一个类称为 Adult,如果年龄在 12 到 20 岁之间,则 Adult 类扩展 Person?如果不可能,您有其他选择吗?
最佳答案
我已经尝试通过HAS-A
关系和运行时多态性来实现您的要求。
在下面的例子中,Age
是一个父类,包含所有年龄段的更通用的属性。
不同年龄组分为几个类(class)。这些类包含特定于年龄的代码或属性,并将扩展 Age
类。例如 Young
和 Elder
类。
class Age {
// Generalized code for Age class
}
class Young extends Age {
// more specific code of Young class
}
class Elder extends Age {
// Elder class specific code
}
public class test {
Age age ;
int ageValue ;
public Age returnVal(int ageValue){
if (ageValue < 20) {
age = new Young();
} else {
age = new Elder();
}
// age object you get will be according to ageValue.
return age;
}
}
returnVal()
方法将根据 ageValue
向您返回 Young
类或 Elder
类的对象.
关于java - 如何在特定条件下扩展类(class)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22205160/