java内部类怎么调用?在Java中,内部类是定义在另一个类内部的类。内部类可以访问外部类的私有属性和方法,而外部类不能直接访问内部类的成员。因此,如果要在外部类中调用内部类的方法,需要通过内部类的对象来实现。
假设我们有一个外部类OuterClass和一个内部类InnerClass,代码如下:
```java
public class
OuterClass {
private int x = 10;
public class InnerClass {
public void printX()
{
System.out.println("x = " + x);
}
}
}
```
在上面的代码中,我们定义了一个OuterClass外部类和一个InnerClass内部类。InnerClass可以访问OuterClass的私有属性x。
要在外部类中调用内部类的方法,可以先创建一个InnerClass对象,然后通过该对象调用内部类的方法。示例代码如下:
```java
public
class Main {
public static void main(String[] args) {
OuterClass outer = new OuterClass();
OuterClass.InnerClass inner =
outer.new InnerClass();
inner.printX(); // 输出:x = 10
}
}
```
在上面的代码中,我们首先创建了一个OuterClass对象outer,然后通过outer对象创建了一个InnerClass对象inner。最后,通过inner对象调用了内部类的printX()方法,输出了x的值。
需要注意的是,如果内部类是静态的,则可以直接通过类名来调用内部类的方法,无需创建内部类的对象。例如:
```java
public class
OuterClass {
private static int x = 10;
public static class InnerClass {
public static void printX()
{
System.out.println("x = " + x);
}
}
}
public class Main {
public static void main(String[] args)
{
OuterClass.InnerClass.printX(); // 输出:x = 10
}
}
```
在上面的代码中,我们将InnerClass声明为静态内部类,并且将printX()方法也声明为静态方法。这样就可以直接通过OuterClass.InnerClass.printX()来调用内部类的方法,无需创建内部类的对象。