Java访问权限修饰符用法总结

2014-11-23 20:06:55 · 作者: · 浏览: 23

  首先声明:java中,friendly这个修饰符并没有显式的声明,在成员变量和方法前什么修饰符也不用,默认的就是friendly。


  为了条理清晰,分三种不同情况来总结。


  一 访问权限修饰符修饰成员变量和方法


  public:表明该成员变量和方法是共有的,能在任何情况下被访问。


  protected:必须在同一包中才能被访问。(说的比较简单,看个例子就明白了)


  Java代码


  class A


  {


  protected int weight ;


  protected int f( int a,int b )


  {


  // 方法体


  }


  }


  假设B与A在同一个包中,则


  Java代码


  class B


  {


  void g()


  {


  A a=new A();


  A.weight=100;//合法


  A.f(3,4); //合法


  }


  }


  特别说明:什么是在同一个包中?


  答:用package打包在一起的class ,叫在同一个包中。(不明白,举个例子)


  eg:在JDK的src\java\io中,你会看到许多java类,第一句源代码都是package java.io;


  没有使用package打包的,在同一目录下的类也会被视做同一个包。


  friendly:在这种情况下中,同protected。区别在第二和第三种情况中。


  Java代码


  class A


  {


  int weight ;


  int f( int a,int b )


  {


  // 方法体


  }


  }