关于接口、抽象类的一题

来源:互联网 发布:11月9日淘宝交易指数 编辑:程序博客网 时间:2024/06/05 08:49
public abstract interface Sudo{public void crazy(String s);}

请问以下哪些选项中的类定义是正确的?

A

public abstract class MySudo implements Sudo{public abstract void crazy(String s){}}

错误

抽象类里可有抽象方法和非抽象方法。

非抽象方法是在抽象类里面已经实现的方法,为所有子类的共性,可进行重写。

抽象方法在子类继承抽象类时必须重写,在声明时不能有实现主体。

该类是实现了Sudo接口的抽象类。crazy方法为抽象方法,不能有主体。如果为删除abstract即正确。

B
public abstract class YourSudo implements Sudo{}

正确

接口被抽象类实现。如果是普通类,那么必须实现接口中的方法,但该类是抽象类,那么继承该抽象类的子类必须实现方法。

C
public class HerSudo implements Sudo{public void crazy(String i){}public void crazy(Integer s){}}

正确

该类实现了接口中的方法。

D

public class HisSudo implements Sudo{public void crazy(Integer i){}}
<span style="color:#ff0000;">错误</span>
<span style="color:#33ff33;">类未实现接口方法。</span>
E
public class ItsSudo extends Sudo{public void crazy(Integer i){}}
错误

超类必须为类,接口只能被接口继承

0 0