【问题标题】:Android Multiple ImplementationsAndroid 多种实现
【发布时间】:2026-02-17 06:50:01
【问题描述】:

我正在尝试这样的事情:

public class MainGamePanel extends SurfaceView implements 
    SurfaceHolder.Callback && SensorEventListener {

我也试过了:

public class MainGamePanel extends SurfaceView implements 
    SurfaceHolder.Callback, SensorEventListener {

我在一个 java 类中同时拥有表面事件和传感器事件,但我无法让它工作。正确的语法是什么?

【问题讨论】:

    标签: java android implementation


    【解决方案1】:
    public class MainGamePanel extends SurfaceView implements 
        SurfaceHolder.Callback, SensorEventListener {
    

    【讨论】:

    • 我试过了,但无法让它工作。我正在使用 Java 1.6 进行编译,但我无法让 @Override 被接受。难道我还不需要重写所有的原始函数吗?
    • “无法接受覆盖”是什么意思?你得到一个编译错误?我建议您仔细检查您是否真的使用 Java 1.6 而不是 Java 1.5 进行编译(也许您在全局范围内设置了 Java 1.6,但在特定于项目的设置中设置了 Java 1.5?),因为我刚刚粘贴了上面的代码并且在我实现了所有必需的方法(使用@Override)。
    • 好的,我的类声明中有 SurfaceHolder.Callback、SensorEventListener。我无法在任何事件函数(如 onSensorChanged())之前使用 @Override 构建项目,因此我删除了 @Override,它会构建,但这些方法从未被触发。你知道我错过了什么吗?
    • 没有看到更多你的代码。您应该打开一个新问题,其中显示更多代码(编辑这个问题可能不是最好的主意,因为这是关于接口继承语法的)。如果您必须删除 @Override 才能编译它,那么您肯定必须在某处将合规性设置为 1.5。