TIJ摘要:訪問控制權限

  1. 重構的原動力之一:發現有更好的方式去實現相同的功能。
  2. OOP須要考慮的基本問題:如何把變更的事物與不變的事物區分開來。
  3. 訪問控制權限:以供類庫開發人員向客戶端程序員指明哪些是可用的,哪些是不可用的。訪問控制的等級,從最大權限到最小權限依次爲:public、protected、包訪問權限和private。
  4. 因爲名字之間的潛在衝突,在Java中對名稱空間進行徹底控制併爲每一個類建立惟一的標識符就成了很是重要的事情。
  5. 每一個編譯單元只能有一個public類,不然編譯器就不會接受。若是在該編譯單元之中還有額外的類的話,那麼在包以外的世界是沒法看見這些類的,這是由於它們不是public類,並且它們主要是用來爲主public類提供支持。
  6. 當編譯一個.Java文件時,在.java文件中的每一個類都會有一個輸出文件,而在該輸出文件的名稱與.java文件中的每一個類的名稱相同,至少多了一個後綴名.class。
  7. java可運行程序:是一組能夠打包並壓縮爲一個java文檔文件(JAR,使用java的jar文檔生成器)的.class文件。
  8. 類庫其實是一組類文件。
  9. 若是使用package語句,它必須是文件中除註釋外的第一句程序代碼。
  10. java包的命名規則所有使用小寫字母,包括中間的字也是如此。
  11. package和import關鍵字容許你作的,是將單一的全局名字空間分割開,使不管多少使用Internet以及java開始編寫類,都不會出現名稱衝突問題。
  12. java解釋器的運行過程以下:首先,找出環境變量CLASSPATH(能夠經過操做系統來設置,有時也能夠經過經過安裝程序—用來在你的機器上安裝Java或給予java的工具—來設置)。CLASSPATH包含一個或多個目錄,用做查找.class文件的根目錄。從根目錄開始,解釋器獲取包的名稱並將每一個句點替換成反斜槓,以從CLASSPATH根中產生一個路徑名稱。獲得路徑名稱會與CLASSPATH中的各個不一樣的項相連接,解釋器就在這些目錄中查找與你所要建立的類名稱相關的.class文件。
  13. C的條件編譯:通常狀況下,源程序中全部的行都參加編譯,但有時但願對其中的一部份內容只是在知足必定條件下才進行編譯,即對一部份內容指定編譯條件。java中沒有條件編譯。
  14. 默認訪問權限沒有任何關鍵字,但一般是指包訪問權限。這就意味着當前包中的全部其餘類對那個成員都有訪問權限,但對於這個包以外的全部類,這個成員倒是private。
  15. 不要錯誤地認爲java老是將當前目錄視爲查找行爲的起點之一。
  16. private的一個用處, 用private標記構造函數,這樣就能夠控制如何建立對象,並阻止別人直接訪問某個特定的構造器。這樣的方式能夠實現單例模式。
  17. 對於類中的域,除非必須公開底層實現細目,不然就應該將全部的域指定爲private.
  18. 出於兩個很重要的緣由,訪問權限控制將權限的邊界劃在了數據類型的內部。第一個緣由是要設定客戶端程序員可使用和不可使用的界限。第二個緣由即將接口和具體實現相分離。

版權聲明:本文爲博主原創文章,未經博主容許不得轉載。java

相關文章
相關標籤/搜索