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 分钟前
Java高效压缩技巧:ZipOutputStream详解
java·后端
booooooty6 分钟前
基于Spring AI Alibaba的多智能体RAG应用
java·人工智能·spring·多智能体·rag·spring ai·ai alibaba
猴哥源码7 分钟前
基于Java+SpringBoot的健身房管理系统
java·spring boot
极光雨雨11 分钟前
Spring Bean 控制销毁顺序的方法总结
java·spring
猴哥源码16 分钟前
基于Java+SpringBoot的三国之家网站
java·spring boot
念九_ysl30 分钟前
Java 使用 OpenHTMLToPDF + Batik 将含 SVG 遮罩的 HTML 转为 PDF 的完整实践
java·开发语言·pdf
yaoxin52112339 分钟前
124. Java 泛型 - 有界类型参数
java·开发语言
Spirit_NKlaus42 分钟前
解决HttpServletRequest无法获取@RequestBody修饰的参数
java·spring boot·spring
不死的精灵1 小时前
【Java21】在spring boot中使用ScopedValue
java·spring boot·后端
liulilittle1 小时前
深度剖析:OPENPPP2 libtcpip 实现原理与架构设计
开发语言·网络·c++·tcp/ip·智能路由器·tcp·通信