このdoJob()メソッドでは、B は getter を介して参照されます。b.execute() 私は個人的にこの考えを支持しませんgetB().
これを行うことで、カプセル化から遠ざかることはわかっていますが、ここで B オブジェクトをカプセル化するのはやり過ぎではありませんか?
class A{
private B b;
public void setB(B b){
this.b = b;
}
public B getB(){
return b;
}
public void doJob(){
getB().execute();
}
}