當前位置:編程學習大全網 - 編程軟體 - java反射機制可以調用到私有方法,是不是就破壞了JAVA的卦裝性呢。

java反射機制可以調用到私有方法,是不是就破壞了JAVA的卦裝性呢。

這是壹個很值得探討的問題,許多人接觸反射時,對反射功能之強大都會抱有懷疑,感覺嚴重破壞了封裝的性質。可是,什麽是封裝,什麽是安全呢?

封裝,是將具體的實現細節隱藏,而把功能作為整體提供給類的外部使用,也就是說,公有方法能夠完成類所具有的功能。當別人使用這個類時,如果通過反射直接調用私有方法,可能根本實現不了類的功能,甚至可能會出錯,因此通過反射調用私有方法可以說是沒有任何用處的,開發人員沒有必要故意去破壞封裝好的類。從這點上看,封裝性並沒有被破壞。

所謂安全,如果意思是保護實現源碼不被別人看見,那沒有作用。不用反射也能輕易獲取源碼。

所以我以為反射機制只是提供了壹種強大的功能,使得開發者能在封裝之外,按照特定的需要實現壹些功能。就好比核技術,雖然造核彈很危險吧,但造核電站還是很有用處的(這個比喻似乎不是很恰當,將就將就)。

曾經給朋友討論過這個問題,感覺解釋得不是很清楚,大家壹起探討探討,看看怎樣表述才能更容易理解:)

  • 上一篇:大專學java是不是涼了
  • 下一篇:錫林浩特市第十小學紅領巾獎章爭章行動記錄卡有哪些
  • copyright 2024編程學習大全網