Java訪問控制出現的背景

Java訪問權限控制出現的背景?

訪問控制(或隱藏具體實現)與 “最初的實現並不恰當” 有關。

如果你把一個代碼段放到了某個位置,等過一會回頭再看時,有可能會發現有更好的方式去實現相同的功能,這也是是重構的原因之一,以使得它更可讀、更易理解、更具有可維護性。

但是,在這種修改和完善代碼的願望之下,也存在着巨大的壓力。通常總是會有一些消費者(客戶端程序員)需要你的代碼在某些方面保持不變,因此你想改變代碼,而它們卻想讓代碼保持不變,由此而產生了在面向對象設計中需要考慮的一個基本問題:“如何把變動的事物與保持不變的事物區分開來” 。

這對類庫(library)而言尤爲重要。類庫的消費者依賴他所使用的那部分類庫,並且能夠知道如果類庫出現了新版本,他們並不需要改寫代碼。從另一個方面來說,類庫的開發者必須有權限進行修改和改進,並確保客戶代碼不會因爲這些改動而受到影響。

在有域(數據成員)存在的情況下,類庫開發者要怎樣才能知道究竟都有哪些域已經被客戶端程序員所調用了呢?改動任何一個成員都有可能破壞客戶端程序員的代碼,於是類庫開發者會被束縛,無法對任何事物進行改動。

爲了解決這一問題,Java提供了訪問權限修飾符,以供類庫開發者向客戶端程序員指明哪些是可用的,哪些是不可用的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章