生活随笔
收集整理的這篇文章主要介紹了
Java 动态代理实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
實現流程
1、代理對象
2、接口
3、目標對象
源碼
package com.test;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
public class Main {public static void main(String[] args) {
final UserServiceImpl target =
new UserServiceImpl();UserService service = (UserService) Proxy.newProxyInstance(Main.class.getClassLoader(),
new Class[]{UserService.class},
new InvocationHandler() {
public Object
invoke(Object proxy, Method method, Object[] args)
throws Throwable {System.out.println(
"執行前");Object result = method.invoke(target, args);System.out.println(
"執行后");
return result;}});System.out.println(service.getAge());}
}
package com.test;
public interface UserService {Boolean isAdult();Integer getAge();
}
package com.test;
public class UserServiceImpl implements UserService {public Boolean
isAdult() {
return false;}
public Integer
getAge() {
return 18;}
}
總結
以上是生活随笔為你收集整理的Java 动态代理实现的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。