熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

對象“友好的”訪問

2013-11-23 18:53:36  來源: Java核心技術 

  如果根本不指定訪問指示符就象本章之前的所有例子那樣這時會出現什麼情況呢?默認的訪問沒有關鍵字但它通常稱為友好(Friendly)訪問這意味著當前包內的其他所有類都能訪問友好的成員但對包外的所有類來說這些成員卻是私有(Private)的外界不得訪問由於一個編譯單元(一個文件)只能從屬於單個包所以單個編譯單元內的所有類相互間都是自動友好因此我們也說友好元素擁有包訪問權限
  友好訪問允許我們將相關的類都組合到一個包裡使它們相互間方便地進行溝通將類組合到一個包內以後(這樣便允許友好成員的相互訪問亦即讓它們交朋友我們便擁有了那個包內的代碼只有我們已經擁有的代碼才能友好地訪問自己擁有的其他代碼我們可認為友好訪問使類在一個包內的組合顯得有意義或者說前者是後者的原因在許多語言中我們在文件內組織定義的方式往往顯得有些牽強但在Java中卻強制用一種頗有意義的形式進行組織除此以外我們有時可能想排除一些類不想讓它們訪問當前包內定義的類
  對於任何關系一個非常重要的問題是誰能訪問我們的私有或private代碼類控制著哪些代碼能夠訪問自己的成員沒有任何秘訣可以闖入另一個包內推薦可以聲明一個新類然後說我是Bob的朋友!並指望看到Bob的protected(受到保護的)友好的以及private(私有)的成員為獲得對一個訪問權限唯一的方法就是
  () 使成員成為public(公共的)這樣所有人從任何地方都可以訪問它
  () 變成一個友好成員方法是捨棄所有訪問指示符並將其類置於相同的包內這樣一來其他類就可以訪問成員
  () 正如以後引入繼承概念後大家會知道的那樣一個繼承的類既可以訪問一個protected成員也可以訪問一個public成員(但不可訪問private成員)只有在兩個類位於相同的包內時它才可以訪問友好成員但現在不必關心這方面的問題
  () 提供訪問器/變化器方法(亦稱為獲取/設置方法)以便讀取和修改值這是OOP環境中最正規的一種方法也是Java Beans的基礎
From:http://tw.wingwit.com/Article/program/Java/hx/201311/25944.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.