中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

java 內部類怎樣使用

小樊
81
2024-11-15 09:36:54
欄目: 編程語言

Java內部類(Inner Class)是定義在另一個類(外部類)內部的類。使用Java內部類可以訪問外部類的所有成員(包括私有成員),并且可以創建外部類的實例。以下是Java內部類的一些常見用法:

  1. 訪問外部類的成員:
public class OuterClass {
    private int data = 10;

    class InnerClass {
        public void accessOuterMembers() {
            System.out.println("Outer class data: " + data);
        }
    }

    public static void main(String[] args) {
        OuterClass outer = new OuterClass();
        OuterClass.InnerClass inner = outer.new InnerClass();
        inner.accessOuterMembers(); // 輸出:Outer class data: 10
    }
}
  1. 創建外部類的實例:
public class OuterClass {
    private int data = 10;

    class InnerClass {
        public void createOuterInstance() {
            OuterClass outer = new OuterClass();
            System.out.println("Outer class data: " + outer.data);
        }
    }

    public static void main(String[] args) {
        OuterClass.InnerClass inner = new OuterClass().new InnerClass();
        inner.createOuterInstance(); // 輸出:Outer class data: 10
    }
}
  1. 訪問外部類的靜態成員:
public class OuterClass {
    private static int data = 10;

    class InnerClass {
        public void accessOuterStaticMembers() {
            System.out.println("Outer class static data: " + OuterClass.data);
        }
    }

    public static void main(String[] args) {
        OuterClass.InnerClass inner = new OuterClass().new InnerClass();
        inner.accessOuterStaticMembers(); // 輸出:Outer class static data: 10
    }
}
  1. 使用匿名內部類(Anonymous Inner Class):
public class OuterClass {
    private int data = 10;

    public void createInner() {
        Runnable runnable = new Runnable() {
            @Override
            public void run() {
                System.out.println("Outer class data: " + data);
            }
        };
        new Thread(runnable).start();
    }

    public static void main(String[] args) {
        OuterClass outer = new OuterClass();
        outer.createInner(); // 輸出:Outer class data: 10
    }
}
  1. 使用局部內部類(Local Inner Class):
public class OuterClass {
    private int data = 10;

    public void createLocalInner() {
        class LocalInnerClass {
            public void accessOuterMembers() {
                System.out.println("Outer class data: " + data);
            }
        }

        LocalInnerClass localInner = new LocalInnerClass();
        localInner.accessOuterMembers(); // 輸出:Outer class data: 10
    }

    public static void main(String[] args) {
        OuterClass outer = new OuterClass();
        outer.createLocalInner(); // 輸出:Outer class data: 10
    }
}

這些示例展示了Java內部類的基本用法。根據需求,您可以使用不同類型的內部類(非靜態內部類、靜態內部類、匿名內部類和局部內部類)。

0
安康市| 平谷区| 荔波县| 贞丰县| 巍山| 兴义市| 灌南县| 仁布县| 崇阳县| 河源市| 天长市| 阳城县| 芜湖市| 微博| 那曲县| 孟州市| 竹北市| 邵武市| 裕民县| 桃江县| 克拉玛依市| 安乡县| 儋州市| 永善县| 宜章县| 宁明县| 洛扎县| 邵东县| 泽库县| 洛隆县| 周宁县| 绍兴市| 图片| 黄平县| 克山县| 吐鲁番市| 垫江县| 勃利县| 大埔县| 木里| 南城县|