java swing学习

4.4 匿名内部类_哔哩哔哩_bilibili,学习资源

复制代码
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class ButtonExample {
    public static void main(String[] args) {
        JFrame frame = new JFrame("按钮事件监听示例");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(300, 200);

        JButton button = new JButton("点击我");
        
        // 添加事件监听器
        button.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                System.out.println("按钮被点击了!");
            }
        });

        frame.getContentPane().add(button);
        frame.setVisible(true);
    }
}

三种类

内部类

成员内部类(Member Inner Class)

成员内部类是最普通的内部类,它可以像外部类的成员变量一样拥有各种访问权限(public, protected, private, 默认)。

复制代码
public class OuterClass {
    private int x = 10;

    public class InnerClass {
        public void print() {
            System.out.println("x = " + x); // 访问外部类的私有成员
        }
    }
}

局部内部类是在一个方法或者作用域内定义的内部类,它只在该方法或作用域内可见。

复制代码
public class OuterClass {
    public void outerMethod() {
        class LocalInnerClass {
            public void print() {
                System.out.println("这是一个局部内部类");
            }
        }
        LocalInnerClass localInner = new LocalInnerClass();
        localInner.print();
    }
}
复制代码
相关推荐
程序员天天困2 小时前
Arthas Profiler 火焰图实战:CPU 热点在哪一目了然
java·jvm·后端
今夜有雨.2 小时前
C++JSON 解析器
c++·笔记·后端·学习·json
蜡台2 小时前
JS 浏览器 / App WebView 检测工具
开发语言·javascript·ecmascript
Mr+范2 小时前
电源诱骗芯片CH224K
单片机·学习
用户3126874877202 小时前
@Autowired 注入的是代理对象?Spring AOP 代理选择原理一次讲透
java·spring
@insist1232 小时前
信息系统管理工程师-任务、标准、EDM 过程与关键域
java·大数据·数据库
程序喵大人2 小时前
【C++进阶】STL容器与迭代器 - 04 list 和 forward_list 用节点换稳定位置
开发语言·c++·list
幸福在路上wellbeing2 小时前
AI 智能体开发 · Day 1 详细学习手册
人工智能·学习
木子杳衫2 小时前
Java高级进阶 | 单元测试JUnit + 反射机制实战详解
java·junit·单元测试
xian_wwq2 小时前
【学习笔记】框架层坍缩——LangChain 们正在被重新定义-14/15
笔记·学习·langchain