Java 匿名内部类的使用

/**

 * 匿名内部类的使用形式

 * 实例:学生和老师一起参加游泳比赛

 */

/**
 * 匿名内部类的使用形式
 * 实例:学生和老师一起参加游泳比赛
 */
public class Main {
    public static void main(String[] args) {
        //1
        Swimming s=new Swimming() {
            @Override
            public void swim() {
                // TODO Auto-generated method stub
                System.out.println("学生在游泳");
            }
        };
        go(s);//学生在游泳
        //2,匿名内部类可以作为方法的形参传输
        go(new Swimming() {
            @Override
            public void swim() {
                // TODO Auto-generated method stub
                System.out.println("老师在游泳");
            }           
        });//老师在游泳
    }
    public static void go(Swimming s){
        System.out.println("游泳开始");
        s.swim();
        System.out.println("结束");
    }
}
interface Swimming{
    void swim();
}

/**

 * 匿名内部类的使用场景

 * 给按钮绑定点击事件

编程中需要才使用匿名内部类

 */

import java.awt.event.ActionListener;

import javax.swing.Action;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;

public class Main2 {
    public static void main(String[] args) {
       //创建窗口
       JFrame win=new JFrame("登录界面");
       win.setSize(400,300);
       win.setVisible(true);
       win.setLocationRelativeTo(null); 
       //创建桌布
       JPanel panel=new JPanel();
       win.add(panel);
       //创建按钮
       JButton b=new JButton("按");
       panel.add(b);
        //需要才使用匿名内部类(ActionListener()是一个接口)
       b.addActionListener(new ActionListener(){
           public void actionPerformed(ActionEvent e){
               JOptionPane.showMessageDialog(win, "按钮");
           }
       });
    }  
}

 学习视频:黑马程序员

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿崽meitoufa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值