當修飾符修飾成員變量和方法時:
private(當前類訪問權限):自身的private只能在當前類的內部被訪問。
例子說明:
class Circle{
private static double pi = 3.14;
private double radius;
public Circle(double r){
radius = r;
}
//獲得圓數組中半徑最大值
public static double compare(Circle[] cirs){
double max = cirs[0].radius;
for(int i=0 ; i<cirs.length ; i++){
if(max < cirs[i].radius){
max = cirs[i].radius;
}
}
return max;
}
}
class Test{
public static void main(String args[]){
Circle[] cirs = new Circle[3];
Circle c1 = new Circle(1.2);
Circle c2 = new Circle(1.3);
Circle c3 = new Circle(1.4);
cirs[0] = c1;
cirs[1] = c2;
cirs[2] = c3;
System.out.println(Circle.compare(cirs));
}
}
default(包訪問權限):成員變量和方法可以被同一包下的子類繼承,在同一包下的其他類中創建該類的對象,可以訪問該類的default修飾的變量和方法。
protected(子類訪問權限):在其他類中被創建對象實例後,若不在同一包中不能訪問該對象中的protected方法和成員變量。成員變量和方法可以被不同包中的子類繼承和使用。
public:無特別的約束。