📜  类内和包内的 java - Java (1)

📅  最后修改于: 2023-12-03 15:41:10.411000             🧑  作者: Mango

类内和包内的 Java

在 Java 中,类是我们常常使用的一个概念。在一个 Java 程序中,我们可以定义多个类,并且这些类可以互相调用,以构建出复杂的程序逻辑。

类的定义

在 Java 中,我们可以通过以下语法定义一个类:

public class MyClass {
    // 类的成员变量
    private int myVar = 0;

    // 类的成员方法
    public void myMethod() {
        System.out.println("Hello World!");
    }
}

其中,public 表示该类是一个公有类,可以被其他类所使用。类名为 MyClass,类体中包含了一个私有成员变量 myVar,以及一个公有成员方法 myMethod

访问修饰符

在 Java 中,有四种访问修饰符可以用来控制成员变量和成员方法的可见性。这四种访问修饰符分别是:

  • public:公有的,可以被任意其他类访问。
  • private:私有的,只能在当前类中访问。
  • protected:受保护的,可以被当前类及其子类访问。
  • 默认访问修饰符:没有显式指定访问修饰符的成员变量和成员方法,其可见性为当前包内可见。
包的定义

Java 中,包是用来组织代码的一种方式,可以避免不同类之间的命名冲突。包可以包含多个类和子包,其定义方式如下:

package com.example.mypackage;

public class MyClass {
    // 类定义
}

其中,com.example.mypackage 即为包名,可以根据实际需要进行命名。需要注意的是,包名中的每个组件都是以 . 分隔的,且不允许使用 Java 中的关键字作为包名。

包的访问控制

Java 中,包也可以添加访问修饰符来控制其可见性。访问修饰符使用和类的访问修饰符相同,分别是 publicprivateprotected 和默认的包级访问权限。具体的作用如下:

  • public:任何类都可以访问该包。
  • private:只有包内的类能访问该包。
  • protected:只有该包及其子包中的类能访问该包。
  • 默认的包级访问权限:只有该包内的类能访问该包。
类内和包内的可见性

类内和包内的可见性主要指的是成员变量和成员方法的可见性。在 Java 中,一个成员变量或成员方法的可见性为类内或包内可见,当且仅当其访问修饰符为 private 或默认时。此时,只有当前类或当前包内的其他类才能访问该成员变量或成员方法。

类内可见性

类内可见性表示一个成员变量或成员方法只能在当前类内部访问,其他类不能访问。这种情况下,成员变量或成员方法的访问修饰符应该为 private

public class MyClass {
    private int myVar;

    private void myMethod() {
        // 方法体
    }
}

以上代码中,myVarmyMethod 能且只能在 MyClass 类内部访问。

包内可见性

包内可见性表示一个成员变量或成员方法只能在当前包内部访问,其他包的类不能访问。这种情况下,成员变量或成员方法的访问修饰符应该为默认的包级访问权限。

package com.example.mypackage;

public class MyClass {
    int myVar;

    void myMethod() {
        // 方法体
    }
}

以上代码中,myVarmyMethod 能且只能在 com.example.mypackage 包及其子包内部访问。

总结

本文介绍了 Java 中类的定义、访问修饰符、包的定义和访问控制,以及类内和包内的可见性。只有合理的控制可见性,才能构建出可维护的程序。