public interface Itest { public void eat(); public void play(); }
一、情景一
抽象类没有实现接口的方法
public abstract class Test implements Itest{ }
子类需实现接口的全部方法,否则报错
public class Testapp extends Test{ @Override public void eat() { } @Override public void play() { } }
另外需要注意:抽象类没有实现接口,但是仍然可以调用里面的方法,具体实现交给子类
public abstract class Test implements Itest{ public void onTransact(){ this.eat(); this.play(); } }
这种情景在aidl生成的Stub类中出现,就是抽象类Stub实现了IxxxService接口,但是不实现里面的方法,交给子类来实现
情景二:
抽象类实现部分方法:
public abstract class Test implements Itest{ @Override public void eat() { } }
子类需实现抽象类未实现的方法,否则报错:
public class Testapp extends Test{ @Override public void play() { } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)