淘先锋技术网

首页 1 2 3 4 5 6 7

Java中的外部类指的是在一个java文件中定义的顶层类,该类可以被其他java文件中的类使用或继承。在Java中,每个java源文件只能定义一个外部类,且该类的名称必须与文件名相同。

//Example.java文件中的外部类
public class Example {
//外部类的成员变量和方法
}

一个java文件中可以同时定义多个类,包括外部类和内部类。内部类可以访问外部类的成员变量和方法,而外部类不能直接访问内部类的成员变量和方法。

//Example.java文件中的外部类和内部类
public class Example {
//外部类成员变量和方法
//内部类
class InnerClass {
//内部类成员变量和方法
//内部类访问外部类成员变量和方法
public void accessOuter() {
//通过Example.this访问外部类的成员变量和方法
}
}
}

外部类和内部类的访问修饰符一样,都可以使用public、protected、default和private,不同的是内部类还可以使用static修饰。

//Example.java文件中的静态内部类
public class Example {
//外部类成员变量和方法
//静态内部类
static class StaticInnerClass {
//内部类成员变量和方法
}
}

外部类和内部类还可以互相访问对方的私有成员,因为它们在同一个文件中编译。

//Example.java文件中的外部类和内部类访问私有成员
public class Example {
private int outerPrivate = 1;
class InnerClass {
private int innerPrivate = 2;
public void accessOuterPrivate() {
//内部类访问外部类的私有成员
int outer = outerPrivate;
}
}
public void accessInnerPrivate() {
InnerClass inner = new InnerClass();
//外部类访问内部类的私有成员
int inner = inner.innerPrivate;
}
}