What is method overriding

Method overriding is a feature of object-oriented programming that allows a subclass to provide a specific implementation of a method that is already defined in its superclass. This enables dynamic polymorphism, where the method that gets executed is determined at runtime based on the object's actual class type.

<?php class Animal { public function sound() { return "Some sound"; } } class Dog extends Animal { public function sound() { return "Bark"; } } class Cat extends Animal { public function sound() { return "Meow"; } } $animal1 = new Dog(); $animal2 = new Cat(); echo $animal1->sound(); // Outputs: Bark echo $animal2->sound(); // Outputs: Meow ?>

method overriding object-oriented programming polymorphism subclass superclass