温馨提示×

java内部类的实现方法是什么

小亿
97
2023-11-30 14:20:22
栏目: 编程语言

Java内部类的实现方法有以下几种:

  1. 成员内部类:将一个类定义在另一个类的内部,作为外部类的成员。成员内部类可以访问外部类的成员变量和方法,包括私有成员。
public class OuterClass {
    private int outerVar;

    public class InnerClass {
        public void innerMethod() {
            outerVar = 10; // 访问外部类的成员变量
            outerMethod(); // 访问外部类的方法
        }
    }

    public void outerMethod() {
        // ...
    }
}
  1. 静态内部类:与成员内部类相比,静态内部类没有对外部类的引用,可以直接创建静态内部类的实例,不需要先创建外部类的实例。
public class OuterClass {
    private static int outerVar;

    public static class InnerClass {
        public void innerMethod() {
            outerVar = 10; // 访问外部类的静态成员变量
            outerMethod(); // 访问外部类的静态方法
        }
    }

    public static void outerMethod() {
        // ...
    }
}
  1. 方法内部类:将一个类定义在方法内部,作为方法的局部变量。方法内部类只能在方法内部访问,不能在方法外部访问。
public class OuterClass {
    public void outerMethod() {
        class InnerClass {
            public void innerMethod() {
                // ...
            }
        }

        InnerClass inner = new InnerClass();
        inner.innerMethod();
    }
}
  1. 匿名内部类:没有名字的内部类,用于创建一个实现某个接口或继承某个类的匿名对象。通常在创建对象时直接定义并实现接口或继承类的方法。
public class OuterClass {
    public void outerMethod() {
        Runnable runnable = new Runnable() {
            @Override
            public void run() {
                // ...
            }
        };

        Thread thread = new Thread(runnable);
        thread.start();
    }
}

0