什麼是反射?在程序的運行階段,對於任意類,都能夠知道這個類裡面的屬性和方法;對於任意對象,都可以調用它的任意方法和屬性;這樣一種通過動態獲取信息和調用對象方法的功能就叫做反射。
我們都知道在面向對象的語言中有句話叫“萬事萬物解對象”,那麼假如創建的一個Student類是不是對象呢?答案是肯定的,這個類就是Java.lang.Class類的對象。類對象有三種表示方式:通過類.class來表示、通過那個對象.getClass()來表示和Class.forName()表示。
用new創建的類屬於靜態加載類,靜態加載類是在編譯時進行加載,通過Class.forName("")加載類屬於動態加載類,在運行時進行加載。通常通過反射獲取類的構造方法、類方法已經屬性會用到下面的方法。
相關推薦
'好程序員Java學習路線之MySQL的執行計劃'
"好程序員Java學習路線之MySQL的執行計劃。什麼是執行計劃?執行計劃通常是開發者優化SQL語句的第一步。MySQL在解析SQL語句時,會生成多套執行方案,然後內部會進行一個成本的計算,然後通過優化器選擇一個最優的方案執行,然後根據這個方案會生成一個執行計劃。開發者通過...
'Java學習全棧工程師的全部技能與Java基礎變高級之路'
"Java之父說說:Java全棧工程師掌握這些技術點才能練成1、操作系統熟悉linux操作系統和安全性能優先考慮。熟悉linux系統下的開發及web平臺架構原理熟悉UNIX命令及配置,可以編寫簡單的shell腳本,UNIX環境下的應用系統安裝調試;FreeBSD2、Ajax...
十年Android程序員:Java語言進階,必須會的-Android序列化總結
前言公園裡,一位仙風鶴骨的老者在打太極,一招一式都仙氣十足,一個年輕人走過去:“大爺,太極這玩意兒花拳繡腿,你練它幹啥?”老者淡淡一笑:“年輕人,你還沒有...
程序員必知的十大基礎實用算法之-Dijkstra算法
迪傑斯特拉算法( Dijkstra算法)迪傑斯特拉算法(Dijkstra)是由荷蘭計算機科學家狄克斯特拉於1959 年提出的,因此又叫狄克斯特拉算法。是從...
從小白到Java高級程序員,這些優化細節你必須會,拿出你的小本本
在JAVA程序中,性能問題的大部分原因並不在於JAVA語言,而是程序本身。養成良好的編碼習慣非常重要,能夠顯著地提升程序性能。● 1. 儘量在合適的場合使...
聽說Java面試官都喜歡問這個,Java程序員必須掌握的IO和NIO!
摘自:來自偶然的塵土 https://www.cnblogs.com/kaikai-2018/p/10864061.html編者說:文章清晰的說明了NIO...
推薦中...