首页 > 代码库 > java访问控制符

java访问控制符

当修饰符修饰成员变量和方法时:

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:无特别的约束。