访问权限
是指对象是否可以通过".“运算符操作自己的的变量或通过”."运算符使用自己类中的方法
访问控制
private 私有的、protected 受保护的 、public 公共的,用来修饰成员变量或方法
用private修饰的成员变量和方法称为私有变量和私有方法
对于私有成员变量和方法,只有在本类中创建该类的对象时,这个对象才能访问自己的私有成员变量和类中的私有方法
示例:
class Tom{
private float weight;
private float f(float a,float b){
return a+b;
}
}
class Jerry{
void cat=new Tom();
cat weight=23f; //非法
float sum=cat f(3,4);//非法
}
}
共有变量和共有方法
用public修饰的成员变量和方法称为共有变量和共有方法
在任何一个类中用类Tom创建了一个对象后,该对象能访问自己的变量和方法(也可以通过类名来操作成员变量、方法)
示例:
class Tom{
public float weight;
public float f(float a,float b){
return a+b;
}
}
class Jerry{
void g(){
Tom cat = new Tom();
cat weight=23f; //合法
float sum=cat f(3,4);//合法
}
}
受保护的变量和方法
用protected修饰的成员变量和方法称为受保护的成员变量和受保护的方法
在任何一个类中用类Tom创建了一个对象后,如果这个类和类Tom在同一个包中,那么该对象能访问自己的受保护的变量和受保护的方法
示例:
class Tom{
protected float weight;
protected float f(float a,float b){
return a+b;
}
}
class Jerry{
void g(){
Tom cat = new Tom();
cat weight=23f; //合法
float sum=cat f(3,4);//合法
}
}
友好变量和友好方法
不用private、public、protected修饰的成员变量和方法称为友好变量和友好方法
在任何一个类中用类Tom创建了一个对象后,如果这个类和类Tom在同一个包中,那么该对象能访问自己的友好变量和友好方法
示例:
class Tom{
float weight;
float f(float a,float b){
return a+b;
}
}
class Jerry{
void g(){
Tom cat = new Tom();
cat weight=23f; //合法
float sum=cat f(3,4);//合法
}
}
public类和友好类
类声明时,如果类在关键字class前面加上public,就称这个类为public类,可以在任何一个类中,使用public类创建对象
要保证它,
如果一个类不加public修饰,这样的类称作友好类
在另外一个类中使用友好类创建对象时,要保证它们在同一包中
注:
1.不能用protected、private修饰类
2.访问限制修饰符按访问权限从高到低的排列顺序:public、protected、友好的、private