МОДУЛЬ 8 · УРОК 2
super and Method Overriding
super accesses parent members. @Override prevents overriding mistakes.
30 minBeginnerJavaOOP
super
super refers to parent class.
class Animal { String name = "Animal"; }
class Dog extends Animal { String name = "Dog";
void print() {
System.out.println(super.name); // Animal
System.out.println(this.name); // Dog
}
}
super()
super() calls parent constructor. Must be first statement.
class Animal { Animal(String n) { } }
class Dog extends Animal { Dog() { super("Dog"); } }
@Override
@Override checks that the method actually overrides a parent method.
class Animal { void sound() { } }
class Dog extends Animal { @Override void sound() { } }
Rules
- Same signature (name + parameters)
- Covariant return type allowed
- Access modifier: same or wider
- final: cannot override
✅ Итоги урока
- super accesses parent fields, methods, constructors.
- super() calls parent constructor (first statement).
- @Override prevents overriding mistakes.
- Final methods cannot be overridden.
- Dynamic binding: runtime type determines method called.
Next lesson: abstract classes.
Test: Test: super and @Override
3 вопроса