有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Dagger2:如何在多态性期间注入成员变量?

public class A {
    protected B mB;
    public A() {
        createB();
    }
    public void createB() {
        mB = new B();
    }
}

public class ChildA extends A {

    public ChildA() {
        super();
    }
    public void createB() {
        mB = new ChildB();
    }
}

public class B {
    public B() {
    }
}

public class ChildB extends B {
    public ChildB() {
    }
}

public class DemoApp {
    public static void main(String[] args) {
        A a = new ChildA();
    }
}

根据上述代码,我们可以看到:

  1. 新建a时,将创建B

  2. 新建ChildA时,将创建ChildB

我的问题是在这种多态性情况下如何注入mB? 如果设计模式不合适,我如何折射代码


共 (0) 个答案