Есть ли разница между
public class A extends AbstractB implements C
{...}
против...
public class A extends AbstractB
{...}
abstract class AbstractB implements C
{...}
Я понимаю, что в обоих случаях класс А в конечном итоге будет соответствовать интерфейсу. Во втором случае AbstractB
может обеспечить реализацию методов интерфейса в C
. Это единственная разница?
Если я не хочу , чтобы обеспечить реализацию любого из методов интерфейса в AbstractB
, какой стиль я должен использовать ? Имеет ли использование того или иного скрытую цель «документирования»?