2

次のようなコードがあるとします。

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 
4

2 に答える 2

9

いいえ、ありません。冗長です。AbstractSampleサンプルで、MySampleAbstractSample です。したがって、MySampleサンプルです。

javadoc は、追加するかどうかに関係なく、実装されているすべてのインターフェースを表示しますimplements Sample

于 2012-05-18T21:17:35.757 に答える
4

利点の 1 つは、Sample を実装しないように AbstractSample が変更された場合でも、最初の宣言で MySample のインスタンスを Sample を期待するメソッドに渡すことができることです。

于 2012-05-18T21:17:54.547 に答える