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

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

Java基礎學習:Java反射機制

更新時間:2020-03-30 16:20:03 來源:動力節點 瀏覽2283次


  一、什么是反射?


  對于程序員來說,應該很少需要直接使用反射工具;之所以在語言中提供它們,是為了支持其他Java特性,比如對象序列化、JavaBeans以及RMI。還有就是在很多框架中,也是應用到了反射機制。


  在初學時,只知道這是個生成驅動實例的語句,而這其實就是應用了反射


Java基礎學習:Java反射機制


  二、反射能做什么?


  主要的四個功能:


  -獲取對象所屬的類


  -獲取類的成員變量、方法


  -運行時創建對象


  -運行時調用對象的方法


  其它功能


  可用構建器創建新對象,通過Constructor類取得其它類的構造函數


  用get()和set()方法讀取和修改與Field對象關聯的字段


  用invoke()方法調用與Method對象關聯的方法,即調用其他類的方法


  此外,我們可調用方法getFields(),getMethods(),getConstructors(),分別返回用于表示字段、方法以及構建器的對象數組,取得并修改數組的信息


  取得其他類的父類、實現的接口、權限修飾符、屬性類型等


  三、反射的優缺點


  優點:可以實現運行時動態創建對象,增加程序的靈活性。這種靈活性怎么體現的呢?比如我們在開發一個大型的軟件,編譯發布后,我們很可能需要更新一些功能,但因為軟件已發布,我們肯定不能要求用戶把以前的卸載,再重新安裝新的版本。如果我們采用靜態的解決方法的話,需要重新編譯整個程序,而如果采用反射機制的話,就可以不用卸載,只需要在運行時才動態的創建和編譯,就可以實現更新的功能。


  缺點:


  性能影響。使用反射基本上是一種解釋操作,我們可以告訴JVM,我們希望做什么并且它滿足我們的要求。這類操作總是慢于只直接執行相同的操作。


  破壞封裝,因為通過反射可以訪問私有變量或方法,這樣可能會存在安全性的問題。比如我們知道String是不可變的,因為這個類被final修飾說明不可繼承,并且String其實就是被final修飾的一個字符數組value,value是private的,但是通過反射是可以訪問到private成員變量,因此通過反射,我們其實是可以改變String的,很明顯,這樣是不安全的。


Java基礎學習:Java反射機制


  以上就是動力節點java培訓機構的小編針對“Java基礎學習:Java反射機制”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。


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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 欧美一a一片一级一片 | 日本免费一区二区三区毛片 | 日日爽爽 | 日韩欧美亚洲综合久久影院d3 | 久久www免费人成高清 | 女人十八毛片一级毛片免费看 | 好吊妞视频一区二区 | 亚洲欧美一区二区三区久久 | 天天爱天天做天天爽天天躁 | 成人免费一级毛片在线播放视频 | 一级理论片 | 综合免费一区二区三区 | 免费福利在线 | 永久久久免费浮力影院 | 亚洲射图 | 水中色av综合 | 很很鲁在线视频播放影院 | 亚洲精品中文一区不卡 | 国产chinesehd在线观看 | 2019精品国产品免费观看 | 伊人久久网国产伊人 | 亚洲国产欧美日韩一区二区三区 | 色噜噜五月综合激情久久爱 | 亚洲欧美日韩中文综合在线不卡 | 国产区一区二区三区 | 久久九色综合九色99伊人 | 久久99精品视香蕉蕉 | 一级无遮挡理论片 | jizz美女| 日本高清中文字幕视频在线 | 天天碰免费视频 | 小说区图片区综合久久亚洲 | 麻豆精品成人免费国产片 | 欧美一级毛片欧美一级 | 青草青视频在线观看 | 免费中文字幕一级毛片 | 欧美13一14周岁a在线播放 | 香蕉在线视频网站 | 元龙第三季动漫在线观看免费版 | 亚洲国产成人久久精品图片 | 欧美刺激午夜性久久久久久久 |