📅  最后修改于: 2023-12-03 15:16:37.455000             🧑  作者: Mango
在Java编程中,包访问指的是类或成员在同一包中可以被其他类访问,但对于位于不同包中的类是不可见的。这种访问权限是默认的,即如果没有指定访问修饰符,默认为包访问。
本文将介绍如何创建包,以及如何在包中访问外部类和同包成员。
要在Java程序中创建包,需要在类文件的顶部添加package
语句。包语句应该在import
语句之前,但在任何类定义之前。下面是创建包的示例代码:
package com.example.mypackage;
在上面的示例中,我们创建了名为com.example.mypackage
的包。包名采用逆域名的命名规则,以确保包名的唯一性。
在同一包中,我们可以直接访问外部类的所有成员(包括公共、受保护、默认和私有成员)。不需要使用任何特殊的访问修饰符就可以访问外部类。
下面是一个示例代码,演示了如何在同一包中访问外部类的成员:
package com.example.mypackage;
public class OuterClass {
private int privateField;
public int publicField;
int defaultField;
public void publicMethod() {
System.out.println("This is a public method in the outer class.");
}
private void privateMethod() {
System.out.println("This is a private method in the outer class.");
}
void defaultMethod() {
System.out.println("This is a default method in the outer class.");
}
}
在上面的示例中,我们定义了一个名为OuterClass
的外部类。该类具有私有、公共和默认的字段和方法。
如果我们在同一包中创建另一个类,那么我们可以直接访问外部类的各种成员(无需使用访问修饰符)。
package com.example.mypackage;
public class Main {
public static void main(String[] args) {
OuterClass outer = new OuterClass();
outer.publicField = 10;
outer.defaultField = 20;
outer.publicMethod();
outer.defaultMethod();
}
}
在上面的示例中,我们在同一包中创建了一个名为Main
的类,并创建了一个OuterClass
对象。我们可以直接访问OuterClass
的公共和默认字段,并调用其公共和默认方法。
在同一包中,我们可以直接访问其他类的公共和默认成员(字段和方法),无需使用任何特殊的访问修饰符。
下面是一个示例代码,演示如何在同一包中访问其他类的成员:
package com.example.myotherpackage;
public class OtherClass {
public int publicField;
int defaultField;
public void publicMethod() {
System.out.println("This is a public method in the other class.");
}
void defaultMethod() {
System.out.println("This is a default method in the other class.");
}
}
在上面的示例中,我们定义了一个名为OtherClass
的类,并定义了公共和默认的字段和方法。
如果我们在同一包中创建了另一个类,那么我们可以直接访问OtherClass
的公共和默认字段,并调用其公共和默认方法。
package com.example.myotherpackage;
public class Main {
public static void main(String[] args) {
OtherClass other = new OtherClass();
other.publicField = 10;
other.defaultField = 20;
other.publicMethod();
other.defaultMethod();
}
}
在上面的示例中,我们在同一包中创建了一个名为Main
的类,并创建了一个OtherClass
对象。我们可以直接访问OtherClass
的公共和默认字段,并调用其公共和默认方法。
通过使用包访问权限,我们可以在同一包中访问外部类和其他同包类的成员。使用包可以帮助我们组织和管理代码,并提供更好的可见性控制。在创建包时,请记住使用逆域名命名规则,以确保包名的唯一性。
以上就是Java程序创建包访问外部类和同包成员的介绍,希望对你有帮助!