Уточняющий вопрос, после лекций у меня в голове прочно осело что если класс кого-то имплементит он обязан заоверрайдить методы классы родителя, но в данном коде я могу заимплементить интерфейс, но могу не оверрайдить его метод в классе наследнике? В каком месте я не допонял как это работает?
public class Solution {

    public static void main(String[] args) {
        CTO cto = new CTO();
        System.out.println(cto);
    }

    public static interface Businessman {
        public void workHard();
    }

    public static class CTO extends DopClass implements Businessman {

    }

    public static class DopClass {
        public void workHard() {

        }
    }
}