国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java反射-屬性

buildupchao / 3089人閱讀

摘要:使用反射可以檢視類屬性成員變量,并且可以在運行時。獲得屬性對象類是通過對象獲得的。示例如下數(shù)組包含類定義所有公共屬性實例。如屬性是靜態(tài)屬性,應(yīng)傳給方法,以替代例子中的參數(shù)。

使用反射可以檢視類屬性(成員變量),并且可以在運行時get/set。這些是通過類java.lang.reflect.Field實現(xiàn)的。本文將詳細介紹javaField對象。別忘了參考Sun的JavaDoc

獲得屬性對象

Field類是通過Class對象獲得的。示例如下:

Class aClass = ...//obtain class object
Field[] fields = aClass.getFields();

Field[]數(shù)組包含類定義所有公共(public)屬性實例。
如果你知道想訪問的屬性名稱,可以使用下方代碼:

Class  aClass = MyObject.class
Field field = aClass.getField("someField");

上訴示例將返回類MyObject定義的someField屬性對應(yīng)的Field實例,類似如下代碼:

public class MyObject{
  public String someField = null;
}

如果給予getField()方法的參數(shù)不存在對應(yīng)的屬性,將拋出NoSuchFieldException

屬性名稱

如已有Field實例,可以通過Field.getName()方法獲取屬性名稱,代碼如下 :

Field field = ... //obtain field object
String fieldName = field.getName();
屬性類型

可以使用Field.getType() 方法獲取屬性類型:

Field field = aClass.getField("someField");
Object fieldType = field.getType();
獲取、設(shè)置屬性值

一旦獲得Field引用,可以使用Field.get()Field.set()方法獲取或設(shè)置屬性值,代碼如下:

Class  aClass = MyObject.class
Field field = aClass.getField("someField");
MyObject objectInstance = new MyObject();
Object value = field.get(objectInstance);
field.set(objetInstance, value);

傳給getset方法的objetInstance必須是擁有指定屬性的一個類的實例。上例使用的是MyObject的實例,因為someField是類MyObject的一個變量。
如屬性是靜態(tài)屬性(public static),應(yīng)傳nullgetset方法,以替代例子中的objectInstance參數(shù)。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/77252.html

相關(guān)文章

  • Java 反射教程

    摘要:反射非常強大和有用。另外,反射可以用在映射結(jié)果集的列名到對象的方法。本教程將深入介紹反射。本教程還將清除一些關(guān)于范型信息在運行時可用性的認知混淆。類對象使用反射時,起點通常是需要使用反射檢視的類的對象。 Java反射可以在運行時檢視類、接口、屬性和方法,而無需在編譯時知道類名、方法名等等。它也同樣使用反射支持實例化新的對象、調(diào)用方法和get/set屬性值。 Java反射非常強大和有用...

    klivitamJ 評論0 收藏0
  • Java知識點總結(jié)(反射-通過反射操作類的屬性和方法 )

    摘要:知識點總結(jié)反射通過反射操作類的屬性和方法知識點總結(jié)反射使用反射操作類的屬性和方法通過反射調(diào)用構(gòu)造方法,構(gòu)造對象其實調(diào)用無參構(gòu)造器張三調(diào)用有參構(gòu)造器李四通過反射調(diào)用普通方法獲取方法激活方法王武王武通過反射操作屬性是屬性,如果不寫會這個私有屬 Java知識點總結(jié)(反射-通過反射操作類的屬性和方法 ) @(Java知識點總結(jié))[Java, 反射] 使用反射操作類的屬性和方法: import ...

    jlanglang 評論0 收藏0
  • 封裝BeanMap以及java反射和內(nèi)省

    摘要:所以,我實現(xiàn)了一個稱為的類來應(yīng)用反射。現(xiàn)在流行的語言大都支持反射。這組內(nèi)省主要是針對類進行操作的,能夠獲取類的屬性信息。可以看到,通過的內(nèi)省機制,解決了的最關(guān)鍵的問題。在封裝反射的時候,會充分考慮到各種情況。 BeanMap 學習具體的技術(shù)工具的好辦法就是些Demo、造輪子。所以,我實現(xiàn)了一個稱為BeanMap的類來應(yīng)用java反射API。 這個BeanMap的功能是將一個Bean包裝...

    張巨偉 評論0 收藏0
  • Java反射詳細介紹

    摘要:通過反射獲取帶參無返回值成員方法并使用設(shè)置安全檢查,訪問私有構(gòu)造函數(shù)必須創(chuàng)建實例這種不行,注意和方法需要傳遞參數(shù)測試復制這個功能獲取私有方法,同樣注意和的區(qū)別賦予訪問權(quán)限調(diào)用方法。 反射 目錄介紹 1.反射概述 1.1 反射概述 1.2 獲取class文件對象的三種方式 1.3 反射常用的方法介紹 1.4 反射的定義 1.5 反射的組成 1.6 反射的作用有哪些 2.反射的...

    ingood 評論0 收藏0
  • Reflection:Java反射機制的應(yīng)用場景

    近期在維護公司項目的時候遇到一個問題,因為實體類中的 set 方法涉及到了業(yè)務(wù)邏輯,因此在給對象賦值的過程中不能夠使用 set 方法,為了實現(xiàn)功能,所以采用了反射的機制給對象屬性賦值,借此機會也了解了反射的一些具體用法和使用場景,分以下兩點對反射進行分析: 反射的優(yōu)勢和劣勢 反射的應(yīng)用場景 反射的優(yōu)勢和劣勢 ??個人理解,反射機制實際上就是上帝模式,如果說方法的調(diào)用是 Java 正確的打開方式...

    浠ラ箍 評論0 收藏0
  • Java反射機制詳解

    摘要:反射機制的應(yīng)用實例在泛型為的中存放一個類型的對象。工廠模式可以參考現(xiàn)在我們利用反射機制實現(xiàn)工廠模式,可以在不修改工廠類的情況下添加任意多個子類。 學習交流群:669823128java 反射 定義 功能 示例概要:Java反射機制詳解| |目錄 1反射機制是什么 2反射機制能做什么 3反射機制的相關(guān)API 通過一個對象獲得完整的包名和類名 實例化Class類對象 獲取一個對象的父類與...

    paraller 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<