Java接口扩展了一个抽象类?

时间:2013-05-25 04:17:06

标签: java inheritance interface abstract-class

我发布的代码片段在接口扩展和抽象类时不会出现任何语法错误。接口audio在方法music

中扩展了抽象类sort()
import java.util.List;
abstract class music {}
public interface audio {}

abstract class play implements Comparable <play> {

    public <audio extends music> void sort (List <music> list){
        //do something 
    }

}

我假设接口不能扩展抽象类。任何人都可以解释为什么会这样吗?

2 个答案:

答案 0 :(得分:5)

在您的示例中,第二个“audio”不是接口,而是泛型方法的类型参数。您也可以将其命名为T

答案 1 :(得分:2)

你误解了。您的类型参数audio隐藏了界面audio

public <T extends music> void sort(List<music> list) {
    // do something
}