PHP 8.4.2 Released!

Атрибут Override

(PHP 8 >= 8.3.0)

Введение

Атрибут указывает, что метод переопределяет метод родительского класса или реализует метод, который определили в интерфейсе.

PHP выдаст ошибку времени компиляции, если в родительском классе или интерфейсе, который реализовали, не содержится метода с таким же названием.

Обзор класса

final class Override {
/* Методы */
public __construct()
}

Примеры

<?php

class Base
{
protected function
foo(): void {}
}

final class
Extended extends Base
{
#[
\Override]
protected function
boo(): void {}
}

?>

Результат выполнения приведённого примера в PHP 8.3 аналогичен:

Fatal error: Extended::boo() has #[\Override] attribute, but no matching parent method exists

Смотрите также

Содержание

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top