public:表示公开的类和变量,既所有的类都可以引入使用的。
protected:表示受保护的类,只有子类和本类可以引入使用。
默认package:表示同包中和本类中可以引入使用。
private:表示私有的,只在本类中可以引入使用。
public void 修饰非静态方法,该方法属于对象,在对象初始化(new Object())后才能被调用;public static void 修饰静态方法,该方法属于类,使用类名.方法名直接调用。非静态方法之间可以互相调用,非静态方法也可以调用静态方法;但是静态方法中不可以直接调用(未初始化的)非静态方法。public static void main 属于静态方法,遵循上述原则。特殊之处,Java 可以通过对象名调用静态方法(对象名.静态方法),不会导致语法错误(syntax error),但是不推荐这样使用,因为静态方法与非静态方法在被调用时应当明确区分,而且其他 OOP 语言如 C#,Swift,Objective-C 都没有这样的语法。
Java class的前面添加public和不添加public有什么区别?
原文:https://www.cnblogs.com/eslovez/p/12155114.html