`
ozh06ozh
  • 浏览: 16563 次
社区版块
存档分类
最新评论

java 中的protected权限

 
阅读更多

java 中的protected权限
2011年09月01日
   凡是被protected修饰的变量都被称为保护变量,除了允许在本类内部访问之外,还允许它的子类以及同一个包中的其他类访问。 
  package test 
  public class declareProtected{ 
  protected int protectedVar=10; 
  void change(){ 
  protectedVar=20; 
  } 
  } 
  下面这个otherClass类也定义在test包中,与declareProtected类同属于一个包 
  package test 
  public class otherClass{ 
  void change(){ 
  declareProtected ca=new declareProtected(); 
  ca.protectedVar=20;//合法 
  } 
  } 
  下面这个deriveClass类是declareProtected的子类。它不在test包中。它也可以访问保护变量protectedVar但是只能通过继承的方式访问 
  import test; 
  public class deriveClass extends declareProtected{ 
  void change(){ 
  protectedVar=30;//合法,改变的是deriveClass 从declareProtected中所继 
  //承的protectedVar 
  } 
  } 
  子类如果不在父类的包中,是无法通过“对象.变量名”的方式来访问protected类型的成员变量,比如下面的访问时非法的 
  import test; 
  public class deriveClass extends declareProtected{ 
  void change(){ 
  declareProtected ca=new declareProtected(); 
  ca.protectedVar=30; 
  } 
  } 
  
  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics