




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
工程師培訓系列CORE
JAVACORE
JAVA第16章:反射類對象獲取類對象的方式反射包(java.lang.reflect)反射的作用思考給定一個對象,要求輸出這個對象所有的方法public
static
void
printMethod(Object
object)給定一個字符串參數,這個參數表示一個類的名字。根據類名,創建該類的一個對象并返回public
static
Object
createObject(String
className)類對象java.lang.Class類的對象類繼承自那個類實現了那些接口有那些屬性有那些方法有那些構造方法….獲取類對象的方式類名.class獲取類對象的方式getClass()方法獲取類對象的方式Class.forName()方法public
static
Class
forName(String
className)
throwsClassNotFoundException類對象的作用getName():獲得類的名稱,包括包名getSimpleName():獲得類的名稱,不包括包名getSuperClass():獲得本類的父類的類對象getInterfaces():獲得本類所實現的所有接口的類對象類對象的作用類對象的作用public
Method[]
getDeclaredMethods()
throwsSecurityExceptionpublic
Method[]
getMethods()
throwsSecurityException類對象的作用類對象的作用獲得所有的公開方法類對象的作用獲得所有的本類中定義的方法類對象的作用Field[]
getDeclaredFields()Field[]
getFields()類對象的作用獲得所有的公開屬性類對象的作用獲得本類中定義的屬性使用類對象創建類的對象Object
newInstance()反射包java.lang.reflect.Field類通過Class對象的如下方法可以獲得Field對象FieldFieldgetDeclaredField(String
name)getField(String
name)Field[]
getDeclaredFields()Field[]
getFields()Field類的常見方法getName()Field類的常見方法public
void
set(Object
obj,
Object
value)public
Object
get(Object
obj)Student stu=new
Student();="tom";//修改屬性值Field類的常見方法Student stu=new
Student();
String
data=;//獲取屬性值Field類的常見方法public
void
setAccessible(boolean
flag)Student
stu
=
new
Student();//stu.age=18;不能直接修改age屬性,這句代碼將無法編譯通過反射包java.lang.reflect.Method類通過Class對象的如下方法可以獲得Method對象public
Method[]getDeclaredMethods()public
Method[]
getMethods()public
Method
getMethod(String
name,Class[]parameterTypes)public
Method
getDeclaredMethod(String
name,Class[]
parameterTypes)Method類的常見方法Student類public
double
study(int
a,
doubleb)Method
m
=c.getDeclaredMethod(“study”,new
Class[]{int.class,
double.class})Method類的常見方法通過反射調用方法Method.invoke(Object,Object[]);反射包java.lang.reflect.Constructor
類通過Class對象的如下方法可以獲得Constructor對象getConstructors()getDeclaredConstructors()getConstructor(Class[]
parameters)getDeclaredConstructor(Class[]
parameters)反射包反射的作用應用反射的代碼,增加程序的通用性Student
s
=
new
Student();s.study();String
className
=
"Student";Class
c
=
Class.forName(className);Object
o
=
c.newInstance();String
methodName
=
"study";Method
m
=
c.getMetho
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 盆腔炎治療灌腸
- 委托中介股權轉讓協議書二零二五年
- 二零二五版食堂勞務承包合同書范文
- 二零二五版債務分擔離婚協議書
- 足療店承包合同書
- 個人擔保合同標準模板二零二五年
- 工程總承包合同書參考范文二零二五年
- 2025至2031年中國孔雀草種苗行業投資前景及策略咨詢研究報告
- 企業如何在全球化背景下布局和保護自己的醫療創新專利
- 幼兒園教研年度工作總結(31篇)
- 機械制圖規范
- GB/Z 42217-2022醫療器械用于醫療器械質量體系軟件的確認
- GB/T 9799-1997金屬覆蓋層鋼鐵上的鋅電鍍層
- 醫師定期考核口腔題庫
- 尾礦庫基本知識課件
- 學生自我陳述興趣特長發展潛能生涯規劃500字
- 少年中國說五線譜樂譜
- 《酸堿中和反應》上課課件(省級優質課獲獎作品)
- 消防器材每月定期檢查記錄表
- 酒店員工服務禮儀規范培訓模板
- 量化策略設計及實戰應用PPT通用課件
評論
0/150
提交評論