Java中是否有任何可用于拦截消息(方法调用)的技术,如Ruby中的method_missing技术?这将允许非常容易地编码装饰器和代理,就像在Ruby中一样:
:Client p:Proxy im:Implementation
------- ---------- -----------------
p.foo() -------> method_missing()
do_something
im.foo() ------------------> do_foo
p.bar() --------> method_missing()
do_something_more
im.bar() -------------------> do_bar
Run Code Online (Sandbox Code Playgroud)
(注意:代理只有一个方法:method_missing())