测向仪出错:
类方向查找器必须声明为抽象或实现 抽象方法 onDirectionFinderStart in DirectionFinderListener
[这里] 方向查找器..有没有办法在这里实现DirectionFinderListener??
public class MainActivity extends BaseActivityLocation
implements NavigationView.OnNavigationItemSelectedListener, DirectionFinderListener {
或
public class DirectionFinder implements DirectionFinderListener {
}
另外,如果我把摘要放在这里。我得到 原因:java.lang.Instantiation异常:无法实例化类
public abstract class MainActivity extends BaseActivityLocation
implements NavigationView.OnNavigationItemSelectedListener, DirectionFinderListener {
接口: 这是我收到错误的地方。 我无法在我的 MainActivity 上实现 onDirectionFinderStart((。
public interface DirectionFinderListener {
void onDirectionFinderStart();
void onDirectionFinderSuccess(List<Route> route);
}
这个问题归结为一些Java基础知识。什么是abstract
类?implement
接口意味着什么。等。我可以尝试给你一个快速的概述,但你应该自己做更多的阅读。
接口是一组方法。类可以声明它们implement
接口,但通过这样做,它们承诺将支持接口中定义的方法。
abstract
类是无法实例化的类。有什么意义?抽象类可以定义abstract
方法。就像接口一样,该类保证有人将编写子类,并且该类将支持这些方法。
综合起来,你就有了答案。如果将implements DirectionFinderListener
添加到类声明中,则有两个选择:实现DirectionFinderListener
中列出的所有方法,或者声明类abstract
。如果你声明你的类abstract
,你将无法实例化它(你必须编写一些子类来实现你选择不在超类中实现的所有方法,你将能够实例化它(。
抽象类:https://docs.oracle.com/javase/tutorial/java/IandI/abstract.html
接口:https://docs.oracle.com/javase/tutorial/java/concepts/interface.html