* 用于修饰类和变量, 指定其适用范围的关键字有:
public: 表示公开的类和变量, 既所有的类都可以引入使用的.
protected: 表示受保护的类, 只有子类和本类可以引入使用.
默认 package: 表示同包中和本类中可以引入使用.
private: 表示私有的, 只在本类中可以引入使用.
所以显而易见, 如果一个 class 前面如果添加了 public 修饰则可以被所有类引入使用, 如果没有加任何修饰词, 那么就只能够被同包中的类和本类引入使用.
* 在 java 中 public void 与 public static void 有什么区别 ?
public void 修饰非静态方法, 该方法属于对象, 在对象初始化 (new Object()) 后才能被调用; public static void 修饰静态方法, 该方法属于类, 使用类名. 方法名直接调用. 非静态方法之间可以互相调用, 非静态方法也可以调用静态方法; 但是静态方法中不可以直接调用 (未初始化的) 非静态方法. public static void main 属于静态方法, 遵循上述原则. 特殊之处, Java 可以通过对象名调用静态方法(对象名. 静态方法), 不会导致语法错误(syntax error), 但是不推荐这样使用, 因为静态方法与非静态方法在被调用时应当明确区分, 而且其他 OOP 语言如 C#,Swift,Objective-C 都没有这样的语法.
来源: http://www.bubuko.com/infodetail-3367812.html