1
为了设置超级类的属性,可以扩展抽象类吗(对于java和SOLID主体)吗? 我想要实现的是将不同的值应用于p2,具体取决于p1的值以及p3的值取决于p2的值(当级联下拉菜单时类似)。 这种情况下可以处理设计模式吗?使用抽象子类设置超级属性
public interface Iface{
public void set_p1(int i);
public void set_p2(int i);
public void set_p3(int i);
}
public abstract class A implements Iface{
private int p1;
private int p2;
private int p3;
public void set_p1(int i){
this.p1 = i;
}
public void set_p2(int i){
this.p2 = i;
}
public void set_p3(int i){
this.p3 = i;
}
}
这里我设置P1至100
public abstract class setOne extends A {
public setOne(){
set_p1(100);
}
}
我现在取决于P1
public abstract class setTwo extends setOne {
public setTwo(){
//do some work using p1
set_p2(200);
}
}
现在我实例我setTwo抽象类的值设置P2
public class TestClass extends setTwo {
public TestClass(){
super();
}
}
TestClass myObj = new TestClass();
现在我期待th的值È对象如下:
myObj.p1 = 100
和
myObj.p2 = 200;
一切正常,如上面描述的 myObj.p1确实是100和同为myObj.p1为100 我是新来的Java,所以我想看看我做了什么符合了坚实的校长和着如何继承在java中使用。 谢谢。 –