Чат Telegram
Группа ВКонтакте
php

Об интерфейсах.

А если разделить эти 3 класса в разные файлы то в начале каждого из них нужно писать

interface CalculateSquare
{
    public function calculateSquare(): float;
}

Файл: Circle.php
class Circle implements CalculateSquare

Файл: Rectangle.php
class Rectangle implements CalculateSquare

Файл: Square.php
class Square implements CalculateSquare

или можно както по другому это сделать?

manalonewolf@gmail.com 02.07.2020 в 09:57

Ответы на вопрос (1)


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

ivashkevich 02.07.2020 в 12:22

а если создать файл interface.php и через неймспейс подключит так будет работать?
А так вообще правильно?

manalonewolf@gmail.com 02.07.2020 в 12:56

Не понял вопроса.

ivashkevich 03.07.2020 в 09:09

Ну вот напримет чоздать файл с названием interface.php и в нём положит код ниже

namespace interface;

interface CalculateSquare
{
    public function calculateSquare(): float;
}

а в других трёх файлах использоват его как показано ниже

use interface;

...
manalonewolf@gmail.com 03.07.2020 в 11:43

Изучите темы неймспейсов, автозагрузки, интерфейсов. Всё в курсе ООП по этой теме есть. И не используйте ключевые слова в именах

ivashkevich 06.07.2020 в 06:54

Добавить новый ответ