当前位置:首页 > Java

java如何访问内部类

2026-03-03 14:02:16Java

访问静态内部类

静态内部类(static nested class)可以直接通过外部类名访问,无需依赖外部类实例。

java如何访问内部类

class OuterClass {
    static class StaticNestedClass {
        void display() {
            System.out.println("Static nested class");
        }
    }
}

// 访问方式
OuterClass.StaticNestedClass nested = new OuterClass.StaticNestedClass();
nested.display();

访问非静态内部类

非静态内部类(inner class)必须通过外部类的实例创建对象。

java如何访问内部类

class OuterClass {
    class InnerClass {
        void display() {
            System.out.println("Inner class");
        }
    }
}

// 访问方式
OuterClass outer = new OuterClass();
OuterClass.InnerClass inner = outer.new InnerClass();
inner.display();

访问局部内部类

局部内部类定义在方法或作用域内,仅能在定义它的块中实例化。

class OuterClass {
    void method() {
        class LocalInnerClass {
            void display() {
                System.out.println("Local inner class");
            }
        }
        LocalInnerClass local = new LocalInnerClass();
        local.display();
    }
}

// 调用方法触发局部内部类
OuterClass outer = new OuterClass();
outer.method();

访问匿名内部类

匿名内部类通常用于实现接口或继承类,直接通过实例化时定义类体。

interface Greeting {
    void greet();
}

class OuterClass {
    void method() {
        Greeting greeting = new Greeting() {
            public void greet() {
                System.out.println("Anonymous inner class");
            }
        };
        greeting.greet();
    }
}

// 调用方法触发匿名内部类
OuterClass outer = new OuterClass();
outer.method();

注意事项

  • 非静态内部类隐含持有外部类的引用,可能引发内存泄漏。
  • 静态内部类无法直接访问外部类的非静态成员。
  • 局部内部类和匿名内部类的作用域受限,无法在外部重复使用。

标签: 部类java
分享给朋友:

相关文章

java如何创建线程

java如何创建线程

创建线程的方法 在Java中,创建线程主要有两种方式:继承Thread类和实现Runnable接口。以下是具体实现方法: 继承Thread类 通过继承Thread类并重写run()方法可以创建线程。…

java如何编译

java如何编译

编译Java程序的基本步骤 安装JDK(Java Development Kit)并配置环境变量。确保javac和java命令可在命令行中运行。JDK是编译和运行Java程序的必备工具。 创建Jav…

java如何学习

java如何学习

学习Java的有效方法 理解基础概念 Java是一门面向对象的编程语言,掌握基础概念如变量、数据类型、运算符、控制语句(if-else、循环)是必要的。面向对象的核心概念包括类、对象、继承、多态和封装…

如何自学java

如何自学java

选择合适的学习资源 从官方文档开始,Oracle提供的Java官方教程(Java Tutorials)是权威且免费的学习资料。在线平台如Codecademy、Coursera或Udemy提供互动式课程…

如何编写java程序

如何编写java程序

安装开发环境 下载并安装JDK(Java Development Kit),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME和PATH正确设置。 选…

java如何配置环境变量

java如何配置环境变量

配置Java环境变量的方法 下载并安装JDK 从Oracle官网或OpenJDK下载适合操作系统的JDK安装包。运行安装程序并按照提示完成安装,记下JDK的安装路径(例如C:\Program File…