栏目导航
热点推荐
- 三十条有用的 Java 编程规则
- Java制作水印图片源码
- Java常见异常及可能的导致原因
- Java中的修饰词使用方法总结
- J2EE系统异常的处理准则
- Java中的异常、断言、日志解析(
- Java面试技巧:Java面试题集锦(
- 面向Java开发人员的Scala指南:
- Java程序员:一刻钟精通正则表达
- 网友经验分享:学好java开发的关
- 专家解答:创建表格与数据库进行
- Java远程访问Domino数据库
阅览排行
Java访问权限修饰符用法总结
www.jz123.cn 2010-03-22 来源: 中国建站 责任编辑(袁袁) 我要投递新闻
为了条理清晰,分三种不同情况来总结。
一 访问权限修饰符修饰成员变量和方法
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抽象类