当前位置:首页 > Java

java 如何调用内部类的方法

2026-03-03 21:57:42Java

调用静态内部类的方法

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

示例代码:

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

// 调用方式
OuterClass.StaticNestedClass nested = new OuterClass.StaticNestedClass();
nested.printMessage();

调用非静态内部类的方法

非静态内部类(inner class)依赖外部类实例,需先创建外部类对象才能访问。

示例代码:

java 如何调用内部类的方法

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

// 调用方式
OuterClass outer = new OuterClass();
OuterClass.InnerClass inner = outer.new InnerClass();
inner.printMessage();

通过外部类方法间接调用

若外部类提供公共方法返回内部类实例,可直接通过该方法调用。

示例代码:

class OuterClass {
    private class InnerClass {
        void printMessage() {
            System.out.println("Private inner class method");
        }
    }

    public InnerClass getInnerInstance() {
        return new InnerClass();
    }
}

// 调用方式
OuterClass outer = new OuterClass();
outer.getInnerInstance().printMessage();

匿名内部类的调用

匿名内部类通常用于接口或抽象类的即时实现,直接通过实例调用方法。

java 如何调用内部类的方法

示例代码:

interface Greeting {
    void greet();
}

// 调用方式
Greeting greeting = new Greeting() {
    @Override
    public void greet() {
        System.out.println("Anonymous inner class method");
    }
};
greeting.greet();

局部内部类的调用

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

示例代码:

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

// 调用方式
OuterClass outer = new OuterClass();
outer.outerMethod();

标签: 部类方法
分享给朋友:

相关文章

vue 方法实现

vue 方法实现

在 Vue 中,方法的实现通常通过 methods 选项完成。以下是 Vue 方法实现的核心要点和示例: 基本方法定义 在 Vue 组件中定义方法时,需将函数声明放在 methods 对象内。这些…

vue实现懒加载的方法

vue实现懒加载的方法

Vue 实现懒加载的方法 路由懒加载 通过动态导入语法拆分路由组件,减少初始加载时间。适用于 Vue Router 配置: const routes = [ { path: '/home…

jquery方法

jquery方法

jQuery 核心方法 $() 或 jQuery() 是核心选择器方法,用于获取 DOM 元素或创建 jQuery 对象。支持 CSS 选择器、DOM 元素或 HTML 字符串。 $('#id'…

vue watch 实现方法

vue watch 实现方法

监听基本数据类型 在Vue中使用watch监听基本数据类型(如String、Number、Boolean)时,可以直接在watch选项中定义: data() { return { me…

vue点击方法实现

vue点击方法实现

实现 Vue 点击事件的方法 在 Vue 中实现点击事件可以通过 v-on 指令或简写的 @ 符号绑定方法。以下是几种常见方式: 绑定内联表达式 <button v-on:click="co…

vue修改的实现方法

vue修改的实现方法

vue修改的实现方法 数据驱动修改 Vue的核心是数据驱动视图更新。通过修改数据(如data、computed、props等),Vue会自动触发视图重新渲染。修改数据应使用Vue提供的响应式方法,例如…