如何在Java中定义匿名内部类函数

来自:互联网
时间:2024-09-10
阅读:

java 中匿名内部类函数是一种无名称的内部类,可用于实现接口或传给方法。语法:new interface() { @override public void method() { } }。实战中,可以创建监听器并用于按钮,代码示例如下:button button = new button(); button.setonclicklistener(new button.onclicklistener() { @override public void onclick(button button) { system.out.println("button clicked!"); } }); button.onclick();。

如何在Java中定义匿名内部类函数

在 Java 中定义匿名内部类函数

匿名内部类函数是一种特殊的内部类,它没有自己的名称,并且直接在声明它的位置创建。这使得它们可以作为参数传递给方法或用于实现接口。

语法:

new Interface() {
    @Override
    public void method() {
        // Implementation
    }
};

实战案例:

创建一个监听器,并在按钮上使用该监听器:

// Button.java
public class Button {

    private OnClickListener onClickListener;

    public void setOnClickListener(OnClickListener onClickListener) {
        this.onClickListener = onClickListener;
    }

    public void onClick() {
        // 调用 onClickListener 中的方法
        if (onClickListener != null) {
            onClickListener.onClick(this);
        }
    }

    public interface OnClickListener {
        void onClick(Button button);
    }
}

// MAIn.java
public class Main {

    public static void main(String[] args) {
        Button button = new Button();

        // 定义匿名内部类函数并设置监听器
        button.setOnClickListener(new Button.OnClickListener() {
            @Override
            public void onClick(Button button) {
                System.out.println("Button clicked!");
            }
        });

        // 触发 onClick 事件
        button.onClick();
    }
}

输出:

Button clicked!

以上就是如何在Java中定义匿名内部类函数的详细内容。

返回顶部
顶部