A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

java访问权限修饰符(特殊情况除外)
作用域        当前类        同一package        子孙类        其他package
public        √        √        √        √
protected        √        √        √        ×
friendly        √        √        ×        ×
private        √        ×        ×        ×
不写时默认为friendly


首先声明:java中,friendly这个修饰符并没有显式的声明,在成员变量和方法前什么修饰符也不用,默认的就是friendly。为了条理清晰,分三种不同情况来总结。

1.         访问权限修饰符修饰成员变量和方法
1)         public:表明该成员变量和方法是共有的,能在任何情况下被访问。
2)         protected:必须在同一包中才能被访问。
3)         friendly:在一个包中或者子类中才能被访问。
4)         private: 只能在本类中访问。
        实际上,把重要的数据修饰为private,然后写一个public的函数访问它,正好体现了OOP的封装特性,是OOP安全性的体现。   



2.         访问权限修饰符修饰类

1)         不能用protected和private修饰类。
2)         用friendly修饰的类叫友好类,在另外一个类中使用友好类创建对象时,要保证它们在同一包中。
  

3.         访问权限修饰符与继承

   这里的访问修饰符指的是修饰成员变量和方法。可以分为两种情况:

1)         子类与父类在同一包中
    此时只有声明为private的变量与方法不能被继承(访问)。

2)         子类与父类不在同一包中
此时private与friendly均不能被继承(访问), protected与public可以。所以,访问权限修饰符权限从高到低排列是public, protected, friendly, private。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马