Java反射機制的用途和缺點

Java反射機制的用途和缺點

北大青鳥長沙麓谷校區(qū)      2022-04-13 17:56:01     6

Java反射機制的用途和缺點,Java反射機制的用途和缺點反射的用途 Uses of Reflection反射被廣泛地用于那些需要在運行時檢測或修改程序行為的程序中。這是一

課程價格 請咨詢

上課時段: 授課校區(qū):

詳細介紹

Java反射機制的用途和缺點

反射的用途 Uses of Reflection

反射被廣泛地用于那些需要在運行時檢測或修改程序行為的程序中。這是一個相對高級的特性,只有那些語言基礎非常扎實的開發(fā)者才應該使用它。如果能把這句警示時刻放在心里,那么反射機制就會成為一項強大的技術(shù),可以讓應用程序做一些幾乎不可能做到的事情。

反射的缺點 Drawbacks of Reflection

盡管反射非常強大,但也不能濫用。如果一個功能可以不用反射完成,那么最好就不用。在我們使用反射技術(shù)時,下面幾條內(nèi)容應該牢記于心:

1.性能第一 Performance Overhead

反射包括了一些動態(tài)類型,所以 JVM 無法對這些代碼進行優(yōu)化。因此,反射操作的效率要比那些非反射操作低得多。我們應該避免在經(jīng)常被 執(zhí)行的代碼或?qū)π阅芤蠛芨叩某绦蛑惺褂梅瓷洹?/p>

2.安全限制 Security Restrictions

使用反射技術(shù)要求程序必須在一個沒有安全限制的環(huán)境中運行。如果一個程序必須在有安全限制的環(huán)境中運行,如 Applet,那么這就是個問題了。

3.內(nèi)部暴露 Exposure of Internals

由于反射允許代碼執(zhí)行一些在正常情況下不被允許的操作(比如訪問私有的屬性和方法),所以使用反射可能會導致意料之外的副作用--代碼有功能上的錯誤,降低可移植性。反射代碼破壞了抽象性,因此當平臺發(fā)生改變的時候,代碼的行為就有可能也隨著變化。

培訓啦提醒您:交易時請核實對方資質(zhì),對于過大宣傳或承諾需謹慎!任何要求預付定金、匯款等方式均存在風險,謹防上當。