摘要:使用反射可以在運行時檢視類的方法并調用它們。你不能直接得到和,必須掃描類所有的方法并依次檢查是否或。首先,我們需要建立和方法的特征方法名稱以開始,需要參數,并且返回一個值。查詢一個類的和方法的示例代碼如下
使用反射可以在運行時檢視類的方法并調用它們。這被用來發現類的getters和setters。你不能直接得到getters和setters,必須掃描類所有的方法并依次檢查是否getter或setter。
首先,我們需要建立getters和setters方法的特征:
Getter
getter方法名稱以“get”開始,需要0參數,并且返回一個值。
Setter
setter方法名稱以“set”開始,需要1個參數。
Setters方法可能會也可能不會返回一個值。一些Setters返回void、設置值,其他setter方法在方法鏈上調用(需要返回值)。因此,你不能對Setter方法的返回值做任何假設。
查詢一個類的getter和setter方法的示例代碼如下:
public static void printGettersSetters(Class aClass){ Method[] methods = aClass.getMethods(); for(Method method : methods){ if(isGetter(method)) System.out.println("getter: " + method); if(isSetter(method)) System.out.println("setter: " + method); } } public static boolean isGetter(Method method){ if(!method.getName().startsWith("get")) return false; if(method.getParameterTypes().length != 0) return false; if(void.class.equals(method.getReturnType()) return false; return true; } public static boolean isSetter(Method method){ if(!method.getName().startsWith("set")) return false; if(method.getParameterTypes().length != 1) return false; return true; }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/77334.html
For the most part, in JavaScript, what you see is what you get. A value’s a value; there are no tricks. Sometimes however, you want a value that’s based on some other values: someone’s full name, for ...
摘要:原文地址設計模式三封裝面向對象編程中,一切都是對象,對一個對象的封裝,也成了面向對象編程中必不可少的部分。封裝方法和別的程序設計語言一樣,也只是三種封裝概念,,。直接訪問和修改破壞了類的封裝性。 原文地址:PHP設計模式(三):封裝 Introduction 面向對象編程中,一切都是對象,對一個對象的封裝,也成了面向對象編程中必不可少的部分。和C/C++,Java,Python等語言一...
摘要:在這一步里,將配置文件的信息裝入到容器的定義注冊表中,但此時還未初始化。注冊后處理器根據反射機制從中找出所有類型的,并將它們注冊到容器后處理器的注冊表中。是屬性編輯器的注冊表,主要作用就是注冊和保存屬性編輯器。 點擊進入我的博客 1 Spring容器整體流程 1.1 ApplicationContext內部原理 AbstractApplicationContext是Applicati...
摘要:上一篇博客介紹了如何基于配置文件在運行時創建實例對象,這篇博客將介紹基于注解方式怎樣實現對象的創建。方便測試,該類型分別創建兩個單例和多例的類型。注意這種為對象注入屬性值的方式耦合度較高,可根據情況使用。 上一篇博客介紹了如何基于xml配置文件在運行時創建實例對象,這篇博客將介紹基于注解方式怎樣實現對象的創建。 廢話不多說,直接上代碼。 首先還是創建項目,由于這次不需要使用第三方的AP...
摘要:系列文章地址文檔可以輕松的將對象轉換成對象和文檔,同樣也可以將轉換成對象。在項目中如果要引入,可以直接利用或者引入注意,項目已經自動依賴了與,不需要額外重復引入。 Github 系列文章地址 Jackson jackson-databind文檔 Jackson可以輕松的將Java對象轉換成json對象和xml文檔,同樣也可以將json、xml轉換成Java對象。在項目中如果要引入Jac...
閱讀 1198·2021-11-10 11:35
閱讀 2925·2021-09-24 10:35
閱讀 2957·2021-09-22 15:38
閱讀 2807·2019-08-30 15:43
閱讀 1338·2019-08-29 18:39
閱讀 2557·2019-08-29 15:22
閱讀 2789·2019-08-28 18:17
閱讀 611·2019-08-26 13:37