gpt4 book ai didi

java - 这个代码结构有名字吗?

转载 作者:行者123 更新时间:2023-12-04 20:45:12 25 4
gpt4 key购买 nike

这是一个简单的例子:

    private final MouseAdapter mouse = new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
calculate();
}
};

这是一个类级别的字段,所以称它为匿名类似乎不太合适。 Nested Classes 上的 Oracle 教程页面中没有其他名称或描述似乎都适合。

我猜它是类似于“单一用途对象”的东西,但我什至很难描述它而不说像“类级别命名匿名类”这样的话


对于那些不熟悉 Java 和 AWT 的人,我正在创建一个类的实例,该类没有操作方法来实现用于监听鼠标操作的接口(interface)。我想要一个实际的实例,这样我就可以将它添加为多种类型的监听器(滚轮、运动和点击),但使用相同的对象进行控制。不过,问题本身并不是特定于 AWT 的。

最佳答案

让我们把它分成几 block

  • private final MouseAdapter mouse 被称为类成员,类型(MouseAdapter)表示该成员可以引用实例和/或 MouseAdapter 的子类。

  • new MouseAdapter() { ... } 被称为 MouseAdapter 接口(interface)/抽象类的匿名实现

因此,总结一下:类成员 mouse 持有对 MouseAdapter 接口(interface)/抽象类的匿名实现的引用。

关于java - 这个代码结构有名字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26419437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com