一 访问权限修饰符修饰成员变量和方法
public:表明该成员变量和方法是共有的,能在任何情况下被访问。
protected:必须在同一包中才能被访问
friendly:在这种情况下中,同protected。区别在第二和第三种情况中。
eg: class A
{
int weight ;
int f( int a,int b )
{
// 方法体
}
}
假设B与A在同一个包中,则
class B
{
void g()
{
A a=new A();
A.weight=100;//合法
A.f(3,4); //合法
}
}
private: 只能在本类中访问。
实际上,把重要的数据修饰为private,然后写一个public的函数访问它,正好体现了OOP的封装特性,是OOP安全性的体现。
二 访问权限修饰符修饰类
1,不能用protected和private修饰类。
2,用friendly修饰的类叫友好类,在另外一个类中使用友好类创建对象时,要保证它们在同一包中。
三 访问权限修饰符与继承
这里的访问修饰符指的是修饰成员变量和方法。可以分为两种情况:
1,子类与父类在同一包中
此时只有声明为private的变量与方法不能被继承(访问)。
2,子类与父类不在同一包中
此时private与friendly均不能被继承(访问), protected与public可以。
所以,访问权限修饰符权限从高到低排列是public ,protected ,friendly, private。