そして、ログ出力担当のProxyクラスを作る。こいつもFooを実装する。ログを出力して実際の処理はFooImplに投げているだけ
そして、ログ出力担当のProxyクラスを作る。こいつもFooを実装する。ログを出力して実際の処理はFooImplに投げているだけ
public class FooProxy implements Foo { private FooImpl fooImpl = new FooImpl(); @Override public void foo() { try { System.out.println("foo start"); fooImpl.foo(); } finally { System.out.println("foo end"); } } @Override public void bar() { try { System.out.println("bar start"); fooImpl.bar(); } finally { System.out.println("bar end"); } } @Override public void baz() { try{ System.out.println("baz start"); fooImpl.baz(); } finally { System.out.println("baz end"); } } }