private
只能用于成员变量和成员函数,即类中的变量和函数,不能用于如成员函数中对变量的限制;
private 限制的只能在类中即大花括号中访问即成员和该类的main可以使用,在外部其他类中即使new了该对象也不能用;
成员变量一般都是private;
这个限制是对类而不是对象,同一个类的所有不同对象之间可以访问各自的私有成员。
public
可以自由和使用;
若不加限制,则为位于同一个package可以访问。
protected
对本包和其子类可见,即同一个package中是可以互相调用的,子类也可以调用父类的。
注意点
若class前有public,则文件名要和类名相同;
编译单元为一个java文件,一个编译单元可以有多个class,但只有一个类为public,其他不加public的类只能在package内使用。