有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java接口在扩展已经实现接口的抽象类的类上是必需的吗?

假设有这样一个代码:

package com.ps.Sample;

public interface Sample
{
    public void Method1();
}

public abstract class AbstractSample implements Sample
{
    public void Method1()
    {
        System.out.println("Hello World");
    }
}

public class MySample extends AbstractSample
{

}

public class TestSample
{
    public static void main(String[] args) 
    {
        Sample my = new MySample();

        my.Method1();
    }

}

我的问题是: 宣布任何阶级都有具体的利益

public class MySample extends AbstractSample implements Sample

而不是

public class MySample extends AbstractSample 

共 (2) 个答案

  1. # 1 楼答案

    不,没有。这是多余的。AbstractSample是一个样本,MySample是一个抽象样本。因此,MySample是一个样本

    不管是否添加implements Sample,javadoc都会显示所有实现的接口

  2. # 2 楼答案

    一个好处是,如果AbstractSample被更改为不实现Sample,那么第一个声明仍然允许您将MySample的实例传递给需要样本的方法