go如何實現類似java的動態代理
java 的動態代理還是很強大的,go 有辦法實現類似的動態代理嗎
下面的程式碼用來代理一個實現了 List 介面的物件。所實現的功能也非常簡單,那就是禁止使用 List 介面中的 add 方法。如果在 getList 中傳入一個實現 List 介面的物件,那麼返回的實際就是一個代理物件,嘗試在該物件上呼叫 add 方法就會丟擲來異常。
public List getList(final List list) {
return (List) Proxy.newProxyInstance(DummyProxy.class.getClassLoader(), new Class[] { List.class },
new InvocationHandler() {
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
if ("add".equals(method.getName())) {
throw new UnsupportedOperationException();
}
else {
return method.invoke(list, args);
}
}
});
}
更多原創文章乾貨分享,請關注公眾號
- 加微信實戰群請加微信(註明:實戰群):gocnio
相關文章
- 用Java 19實現類似Go併發 - mccueJavaGo
- Go | Go 結合 Consul 實現動態反向代理Go
- SAP ABAP和Java的動態代理實現Java
- java動態代理如何使用Java
- Java使用Porxy和InvocationHandler實現動態代理Java
- 如何實現Java 設定動態代理ip的具體操作步驟Java
- Java代理設計模式(Proxy)的四種具體實現:靜態代理和動態代理Java設計模式
- 【乾貨】JDK動態代理的實現原理以及如何手寫一個JDK動態代理JDK
- Java JDK 動態代理使用及實現原理分析JavaJDK
- Android 動態代理以及利用動態代理實現 ServiceHookAndroidHook
- java 的動態代理Java
- Java動態代理 jdk和cglib的實現比較JavaJDKCGLib
- 01 . Go之從零實現Web框架(類似Gin)GoWeb框架
- JDK解構 - Java中的引用和動態代理的實現JDKJava
- Java中的靜態代理和動態代理Java
- Java代理(jdk靜態代理、動態代理和cglib動態代理)JavaJDKCGLib
- java靜態代理和動態代理Java
- Java JDK 動態代理(AOP)使用及實現原理分析JavaJDK
- Java動態代理Java
- 反射-動態代理的概述和實現反射
- Spring的JDK動態代理如何實現的(原始碼解析)SpringJDK原始碼
- JavaScript代理模式,怎麼實現物件的動態代理?JavaScript模式物件
- 【JAVA】代理模式之Java動態代理Java模式
- 教你如何用SQLite 實現if not exist 類似功能的操作SQLite
- Blazor如何實現類似於微信的Tab切換?Blazor
- MySQL 06 mysql 如何實現類似 oracle 的 merge intoMySqlOracle
- Java-JDK動態代理(AOP)使用及實現原理分析JavaJDK
- 類似這樣的連結是如何實現的呢?
- java動態代理動態在哪裡?Java
- 一篇文章徹底搞懂java動態代理的實現Java
- 細說JDK動態代理的實現原理JDK
- Java動態代理(AOP)Java
- java動態代理(1)Java
- Java Proxy動態代理Java
- java動態代理原理Java
- go實現http代理GoHTTP
- 輕鬆理解 Java 靜態代理/動態代理Java
- 如何實現類似 lodash 的 get 與 merge 函式函式