Java class的前面添加public和不添加public有什么区别?

*用于修饰类和变量,指定其适用范围的关键字有:

  1. public:表示公开的类和变量,既所有的类都可以引入使用的。

  2. protected:表示受保护的类,只有子类和本类可以引入使用。

  3. 默认package:表示同包中和本类中可以引入使用。

  4. 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 都没有这样的语法。

猜你喜欢

转载自www.cnblogs.com/eslovez/p/12155114.html