首页 | 源码下载 | 网站模板 | 网页特效 | 广告代码 | 网页素材 | 字体下载 | 书库 | 站长工具
会员投稿 投稿指南 RSS订阅
当前位置:主页>网络编程>java教程>资讯:Java访问权限修饰符用法总结

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

www.jz123.cn  2010-03-22   来源:   中国建站    责任编辑(袁袁)    我要投递新闻

 首先声明: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的srcjavaio中,你会看到许多java类,第一句源代码都是package java.io;

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

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

  Java代码


   class A
  {
  int weight ;
  int f( int a,int b )
  {
  // 方法体
  }
  }

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

  Java代码


  class B
  {
  void g()
  {
  A a=new A();
  A.weight=100;//合法
  A.f(3,4); //合法
  }
  }

  private: 只能在本类中访问。

  Java代码


   class Test
  {
  private int money;
  Test()
  {
  money=2000;
  }
  private int getMoney()
  {
  return money;
  }
  public static void main(String args[])
  {
  Test te=new Test();
  te.money=3000; //合法
  int m=te.getMoney(); //合法
  System.out.println("money="+m);
  }
  }

  PS: 实际上,把重要的数据修饰为private,然后写一个public的函数访问它,正好体现了OOP的封装特性,是OOP安全性的体现。

上一篇:用js实现java中的静态/私有/共有的属性和方法 下一篇:设计模式之java接口和java抽象类

评论总数:0 [ 查看全部 ] 网友评论


关于我们隐私版权广告服务友情链接联系我们网站地图