Java Swing 中的观察者模式测试案例

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

/**
 * Swing 观察者模式
 */
public class Swings extends JButton {

    @Override
    public String toString() {
        return "Swings{}";
    }

    public static void main(String[] args) {

        Swings swings = new Swings(); //被观察者-主题

        swings.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                System.out.println("观察者:"+e.getActionCommand() + e.getID() + e.getSource());
            }
        });  // 注册订阅者

        swings.fireActionPerformed(new ActionEvent(swings, 100, "[被观察者-触发事件]")); //被观察者-通知观察者(主题-通知-订阅者)


    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值