Android错误x必须实现继承的抽象方法

时间:2013-05-26 22:08:02

标签: android lejos-nxj

我有一个叫做的课程:

  public class NXTCommAndroid implements NXTComm

Eclipse提供以下红色错误

  

NXTCommAndroid类型必须实现继承的抽象方法NXTComm.search(String)

IDE建议要么使类抽象,这是错误的,要么添加未实现的方法,这似乎是直截了当的,除了方法已经实现。

它补充说:

//@Override
public NXTInfo[] search(String name) throws NXTCommException {
    // TODO Auto-generated method stub
    return null;
}

但这已经存在:

public NXTInfo[] search(String name, int protocol) throws NXTCommException {
    //stuff that would take up too much room
     }

1 个答案:

答案 0 :(得分:3)

您需要使用完全相同的方法签名覆盖完全相同的方法。这意味着:相同的名称,相同的返回类型,相同的范围(公共,受保护,私有,无)以及相同的参数类型和编号。

因此,您的第二种方法public NXTInfo[] search(String name, int protocol) throws NXTCommException不会被视为public NXTInfo[] search(String name) throws NXTCommException的覆盖。

您可能会考虑这样做:

@Override
public NXTInfo[] search(String name) throws NXTCommException {
    return search(name, myDefaultProtocolInt);
}

public NXTInfo[] search(String name, int protocol) throws NXTCommException {
    //stuff that would take up too much room
}