未タイトル

ところで、チョット違う話ですが、FooProxyクラスのFooImpleへの依存を断ち切り、Fooを外部から注入するようにします。ここではコンストラクタでFooを渡します。

ところで、チョット違う話ですが、FooProxyクラスのFooImpleへの依存を断ち切り、Fooを外部から注入するようにします。ここではコンストラクタでFooを渡します。

  • タグ:
  • タグはありません
public class FooLogger implements Foo {
private Foo foo;
public FooLogger(Foo foo) {
this.foo = foo;
}
@Override
public void foo() {
try {
System.out.println("foo start");
foo.foo();
} finally {
System.out.println("foo end");
}
}
@Override
public void bar() {
try {
System.out.println("bar start");
foo.foo();
} finally {
System.out.println("bar end");
}
}
@Override
public void baz() {
try{
System.out.println("baz start");
foo.baz();
} finally {
System.out.println("baz end");
}
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX