gpt4 book ai didi

c# - 抽象类 MouseAdapter 与接口(interface)

转载 作者:行者123 更新时间:2023-12-02 00:52:12 25 4
gpt4 key购买 nike

我注意到了这一点(它是一个 java.awt.event 类)。

public abstract class MouseAdapter implements MouseListener, 
MouseWheelListener,
MouseMotionListener {
....
}

那么你显然被迫从这个适配器扩展

public class MouseAdapterImpl extends MouseAdapter {}

该类是抽象的,没有实现任何方法。这是将不同接口(interface)组合成单个“基本接口(interface)”的策略吗?我认为在 java 中,如果不使用这种方法,就不可能将不同的接口(interface)组合成一个接口(interface)。

换句话说,在java中不可能做这样的事情

public interface MouseAdapterIface extends MouseListener, 
MouseWheelListener,
MouseMotionListener {
}

然后最终

public class MouseAdapterImpl implements MouseAdapterIface {}

我对这一点的理解正确吗? C# 怎么样?

最佳答案

In other words, it's not possible to do something like this in java

public interface MouseAdapterIface extends MouseListener, 
MouseWheelListener,
MouseMotionListener {
}

当然,您可以在 Java 中做到这一点。

拥有抽象类的原因是它还为所有方法提供默认实现(不执行任何操作),因此您只需实现您感兴趣的方法即可。

the class is abstract and implements no methods

不正确。它是抽象的,但它确实实现了三个接口(interface)中的所有方法。

关于c# - 抽象类 MouseAdapter 与接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2513976/

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