финальные методы

Финальные методы и классы

Финальный метод — это метод, который нельзя перегружать. Это делается на практике не так часто по причине: метод еще не доработан или планирую в будущем его изменить.

Пример:

class Mathematics {
final function countSum($a,$b){ //финальный метод
print('Сумма: ' . $a + $b);
}}
class Algebra extends Mathematics {
// Возникнет ошибка
public function countSum($a,$b){ //финальный метод нельзя перегружать
$c = $a + $b;
print("Сумма $a и $b: $c");
}}

По аналогии можем класс тоже объявить финальным:

final class Breakfast { //финальный класс
function eatFood($food){
print("Скушали $food!");
}}
// Возникнет ошибка
class McBreakfast extends Breakfast //класс не может быть унаследован от финальногокласса
{
// Описание класса
}

Из примера выше мы видим, что от финального класса нельзя создавать класс-наследник.

Т.е. по сути финальные классы и методы я еще недореализовал, и в будущем что-то планирую с ними делать, развивать их, возможно в другую сторону. И чтобы в коде не возникало ошибок, я финализирую класс или метод.




Добавить комментарий

Ваш e-mail не будет опубликован.