> Наследуется сам Класс или его Интерфейс?
Что значит "его интерфейс"?
Интерфейс - это отдельная архитектурная единица, такая же, как и класс. Описывается ключевым словом "interface".
По умолчанию у класса нет никакого интерфейса (если он сам его не реализует).
---
Если класс наследует класс (в Java это extends), то наследуются его методы, поля, свойства. То есть дочерний класс приобретает все члены базового, и может еще добавить что-то от себя (или переопределить унаследованное). Методы наследуются вместе с их реализацией, т.е. для дочернего класса они будут работать так же, как и для базового.
К примеру, возьмем GUI: классы Button и Label наследуют базовый класс Control, при этом свойства Left, Top, Width, Height, унаследованные от Control, в обоих классах работают одинаково. При этом реализация и заголовки этих методов прописаны только в Control.
Если класс реализует интерфейс (в Java это implements), то он получает от интерфейса заголовки методов, а реализовать их он должен сам, причем все. В интерфейсе реализаций методов нету, в этом его главное отличие от класса.
int foo() // - это заголовок метода
{
// а здесь реализация (она же определение, тело...) метода (собственно код)
}