Heim Java javaLernprogramm Was bedeutet inner in Java?

Was bedeutet inner in Java?

Apr 29, 2024 am 12:15 AM

In Java wird das Schlüsselwort „inner“ verwendet, um innere Klassen zu erstellen, die in einer anderen Klasse definiert sind, einschließlich verschachtelter Klassen, statisch verschachtelter Klassen und innerer Klassen. Verschachtelte Klassen und statisch verschachtelte Klassen können auf alle nicht privaten Mitglieder der äußeren Klasse zugreifen, während innere Klassen nur auf nicht private Mitglieder der äußeren Klasse zugreifen können. Innere Klassen werden häufig verwendet, um funktionalen Code in logische Gruppen zu organisieren und die Wartbarkeit und Lesbarkeit des Codes zu verbessern.

Was bedeutet inner in Java?

innere Bedeutung in Java

In der Programmiersprache Java wird das Schlüsselwort „inner“ zum Erstellen innerer Klassen verwendet. Eine innere Klasse ist eine Klasse, die in einer anderen Klasse definiert ist, die als äußere Klasse bezeichnet wird.

Typen innerer Klassen

Es gibt drei Arten innerer Klassen in Java:

  • Verschachtelte Klasse: Definiert in der nichtstatischen Methode der äußeren Klasse.
  • Statisch verschachtelte Klasse: Definiert in der statischen Methode der äußeren Klasse.
  • Innere Klasse: Definiert in der Instanzmethode der äußeren Klasse.

Zugriffsberechtigungen innerer Klassen

  • Verschachtelte Klassen und statisch verschachtelte Klassen können auf alle Mitglieder der äußeren Klasse zugreifen (außer private Mitglieder).
  • Innere Klassen können nur auf nicht private Mitglieder äußerer Klassen zugreifen.

Zweck innerer Klassen

Innere Klassen werden normalerweise verwendet, um Funktionscode in logische Gruppen zu organisieren. Sie können auch auf private Mitglieder externer Klassen zugreifen und so die Wartbarkeit und Lesbarkeit des Codes verbessern.

Instanzen

// 外部类
public class OuterClass {

    private int number;

    // 嵌套类
    public class NestedClass {

        public void printNumber() {
            System.out.println(number);
        }
    }

    // 静态嵌套类
    public static class StaticNestedClass {

        public static void printMessage() {
            System.out.println("Static nested class message");
        }
    }

    // 内部类
    public InnerClass getInnerClass() {
        // 内部类定义在实例方法中
        class InnerClass {

            public void printName() {
                System.out.println("Inner class name");
            }
        }

        return new InnerClass();
    }

    // 主函数
    public static void main(String[] args) {
        OuterClass outerClass = new OuterClass();
        NestedClass nestedClass = outerClass.new NestedClass();
        nestedClass.printNumber();

        StaticNestedClass.printMessage();

        InnerClass innerClass = outerClass.getInnerClass();
        innerClass.printName();
    }
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas bedeutet inner in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)