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

繼承protected

2013-11-23 18:49:27  來源: Java核心技術 

  現在我們已理解了繼承的概念protected這個關鍵字最後終於有了意義在理想情況下private成員隨時都是私有任何人不得訪問但在實際應用中經常想把某些東西深深地藏起來但同時允許訪問衍生類的成員protected關鍵字可幫助我們做到這一點它的意思是它本身是私有的但可由從這個類繼承的任何東西或者同一個包內的其他任何東西訪問也就是說Java中的protected會成為進入友好狀態
  
  我們采取的最好的做法是保持成員的private狀態——無論如何都應保留對基 礎的實施細節進行修改的權利在這一前提下可通過protected方法允許類的繼承者進行受到控制的訪問
  
  //: Orcjava
  // The protected keyword
  import javautil*;
  
  class Villain {
   private int i;
   protected int read() { return i; }
   protected void set(int ii) { i = ii; }
   public Villain(int ii) { i = ii; }
   public int value(int m) { return m*i; }
  }
  
  public class Orc extends Villain {
   private int j;
   public Orc(int jj) { super(jj); j = jj; }
   public void change(int x) { set(x); }
  } ///:~
  
  可以看到change()擁有對set()的訪問權限因為它的屬性是protected(受到保護的)
From:http://tw.wingwit.com/Article/program/Java/hx/201311/25807.html
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.