我想尝试实例化一个Child对象,该对象使用先前实例化的父对象的属性扩展Parent。所以像这样:
class Parent {
ClassName property1;
// Setters and getters
}
class Child extends Parent {
public Child(Parent parent) {
this.property1 = parent.getProperty1();
// + other properties
}
}
Parent parent = new Parent();
parent.setProperty1(prop);
Child object = (Child)parent; // Casting exception
Child object2 = new Child(parent); // This is not ideal
还有其他方法可以达到这个目的吗?
答案 0 :(得分:1)
首先查找多态性。您似乎不熟悉OOP语言的主要功能之一。
其次,你需要像这样实例化你的父母
Parent p = new Child();
Child c = (Child) p;