大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java基礎教程之Java反射

Java基礎教程之Java反射

更新時間:2019-09-30 10:17:39 來源:動力節點 瀏覽2764次

反射是Java中核心技術之一,這里先不定義什么叫反射,先看一個例子

  image.png

  要求:

  1)創建一個person的實例,單不能使用Personperson=newPerson()的方式

  2)調用run()方法,也不能使用person.run()方式

  我們知道要調用方法必須先要有對象,現在不能通過new關鍵字來實例化對象,只能通過反射來實現。

  image.png

  上面就實現用反射的方式調用preson類中的方法。可能有人要問了,為什么不直接new出來呢?通過反射來創建對象,調用方法多費勁啊?

  關鍵在于很多時候我們并不能事先知道要new什么對象,相反我們可能只知道一個類的名稱和方法名,很多時候這些名稱都是寫在XML配置當中的。

  好多框架中用到了反射,比如sturts,spring,hibernate等,下面舉幾個列子說明

  【Strust2】

  在struts.xml中配置的action

  image.png

  定義的action

  image.png

  Struts2框架本身不知道我們有一個TopicAction這個類,但它可以這樣做,在struts2框架初始化的時候解析你配置的xml,再找到你配置TopicAction,然后通過反射的技術實例化這個類,等在有人調用的時候通過反射調用topicAction中的方法。

  【Hibernate】

  image.png

  文件的定義

  image.png

  在映射文件中建立了數據表和對象的映射關系,所以我們在hibernate中操作的都是對象,但是底層都會轉成sql執行,比如我們要查詢一個對象,

  Topictopic=session.get(Topic.class,12);

  執行過程是這樣的:

  【類名】==>【表明】==>【發出sql語句】==>【通過反射實例化對象】==>【通過反射調用setXxx()方法把數據庫的值設進入】

  總結一下,反射就是在編譯期不知道創建那個類,而是在運行期才知道創建那個類,這種情況下就應該考慮到用反射。

  那反射能做什么呢?

  1)獲取一個類的內部結構,比如:方法,屬性,注解等

  2)運行時對一個Java對象操作,包括實例化對象,調用方法,給屬性賦值。

  為什么叫反射呢?

  可能是Java程序在運行時能夠看到自己的結構和行為吧,就像看到鏡子當中的自己一樣,反射了出來。

  以上就是動力節點java培訓機構小編介紹的“Java基礎教程之Java反射”的內容,希望對大家有幫助,更多java最新資訊請繼續關注動力節點java培訓機構官網,每天會有精彩內容分享與你。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产亚洲精品麻豆一区二区 | 99久视频| 欧美乱爱| 91精品国产高清久久久久久io | 四虎国产成人免费观看 | 91久久精品国产91性色tv | 日韩 欧美 亚洲 国产 | 免费看欧美一级a毛片 | 手机看片在线精品观看 | 四虎免费紧急入口观看 | 国产在视频线在精品 | 一级毛片秋霞特色大片 | 综合色久 | 五月婷花 | 在线免费一区二区 | 激情国产白嫩美女在线观看 | 欧美亚洲免费 | 日韩毛片最新看 | 99久久99热久久精品免费 | 欧美日韩国产58香蕉在线视频 | 日日碰日日摸日日澡视频播放 | 亚洲一级片在线观看 | 日韩a毛片 | 免费在线毛片 | 秒播影视 午夜福利毛片 | 四虎影院在线免费播放 | 日韩成人国产精品视频 | 欧美日韩国产一区二区 | 亚洲国产欧美一区 | 欧美在线一区二区三区精品 | 精品亚洲欧美高清不卡高清 | 欧美成人性色大片在线观看 | 亚洲精品国产一区二区三 | 成人短视频视频在线观看网站 | 一本一本久久a久久精品综合麻豆 | 91久久精品一区二区三区 | 青青青久在线视频免费观看 | 欧美视频在线观看一区二区 | 久久免费毛片 | 国产成人高清视频免费播放 | 天天狠狠色噜噜 |