PHP КОВАРИАНТНОСТЬ И КОНТРАВАРИАНТНОСТЬ

В PHP ковариантность и контравариантность относятся к типам данных при наследовании классов. Ковариантность - это возможность возвращать из метода дочернего класса объект родительского класса, а контравариантность - это возможность передавать в метод дочернего класса объект наследника родительского класса.

Пример ковариантности:

class Animal { public function getSound(): AnimalSound { return new AnimalSound(); }}class Cat extends Animal { public function getSound(): AnimalSoundCat { return new AnimalSoundCat(); }}class AnimalSound {}class AnimalSoundCat extends AnimalSound {}

Пример контравариантности:

class Animal { public function setSound(AnimalSound $sound): void { // some logic }}class Cat extends Animal { public function setSound(AnimalSoundCat $sound): void { // some logic }}class AnimalSound {}class AnimalSoundCat extends AnimalSound {}

C#. Ковариантность и Контравариантность обобщений (Делегаты). Урок 62

Learn PHP 8 In Arabic 2022 - #047 - Function Variable Arguments List

Инвариантность, ковариантность и контравариантность на примере Python

C#. Ковариантность и контравариантность обобщений (Интерфейсы) Урок 61

Java. Ковариантность и контравариантность обобщенных типов на примере ArrayList.

Learn PHP 8 In Arabic 2022 - #048 - Function Training And Unpacking Arguments

Learn PHP 8 In Arabic 2022 - #024 - Increment And Decrement Operators

C# — ковариантность и контравариантность в обобщенных интерфейсах

Ковариантность, контрвариантность, инвариантность

Реклама
Новое
Реклама