Vše, co potřebujete vědět o vlastnostech v PHP

Tento článek vám poskytne podrobné a komplexní znalosti o vlastnostech v PHP, o tom, jak je implementován, a o rozdílech od dědičnosti.

Než pochopíme vlastnosti . Naučili jsme se o dědičnosti, což znamená, že třída může rozšířit další třídu. Řekněme, že třída B rozšiřuje třídu A a třída C také rozšiřuje třídu A, což znamená, že k funkci definované ve třídě A lze přistupovat pomocí třídy B a třídy C, ale předpokládejme, že pokud třída B a třída C přepsala funkci X a řekněme, že třída D je rozšíření obou tříd.

traits-in-php





Ačkoli více dědičností to PHP nepodporuje, ale předpokládejme, že by tomu tak bylo, kterou funkci spustí třída D? Je to ze třídy B nebo je to ze třídy C? Toto je vlastně problém s vícenásobnou dědičností, proto jej PHP nepodporuje, ale existuje mnoho případů, kdy chcete rozšířit více než jednu třídu pro opětovné použití kódu.



Když mluvíme o problému s jednoduchou dědičností, třída D rozšiřuje třídu C, ale co když chceme mít některé funkce třídy B ve třídě D. K tomu můžeme použít vlastnosti, které jsou zavedeny v PHP 5.4. Vytváření je jednoduché a snadné. Je to jako třída, ale pouze pro skupinu metod a jako abstraktní třídy nemůžete vytvořit instanci diskret.

apache spark ve srovnání s hadoop mapreduce

Vlastnosti v PHP

Obecně mohou definovat statické členy i statické metody, což pomáhá vývojářům volně znovu používat metody v několika nezávislých třídách v různých hierarchiích tříd. Vlastnosti se vyhýbají problémům spojeným s více dědičnostmi, Mixins a také snižují složitost.



Syntax:

 

Rysy lze tímto způsobem zahrnout do jiných tříd.

třída Příspěvek {use Sharable} komentář třídy {use Sharable}

Protože PHP neumožňuje více dědičností, Trait se používá k překonání tohoto problému tím, že nám umožňuje opětovné použití stejné funkce ve více třídách. Níže uvedený příklad ukazuje fungování vlastností v PHP.

func ()?>

Výstup:

Výhoda vlastností

Vlastnosti snižují duplikaci kódu a zároveň zabraňují komplikovanému dědění tříd, které nemusí v kontextu vaší aplikace dávat smysl.

jak dělat sílu v pythonu

To pomáhá definovat jednoduché rysy, které jsou jasné a výstižné, a poté tuto funkci podle potřeby kombinovat.

Rysy vs rozhraní v PHP

Obecně platí, že hlavní rozdíl mezi rozhraními a vlastnostmi v PHP spočívá v tom, že vlastnosti v podstatě definují skutečnou implementaci každé metody v rámci každé třídy, takže stejné rozhraní je implementováno mnoha třídami, ale s odlišným chováním, zatímco vlastnosti jsou jen kousky vloženého kódu ve třídě v PHP.

jak změnit cestu java
 

S tímto se dostáváme na konec těchto vlastností v článku pythonu. Doufám, že jste se dozvěděli o vlastnostech, výhodách vlastností a rozdílech mezi vlastnostmi a rozhraními.

Pokud shledáte tento blog PHP relevantní, podívejte se na Edureka, důvěryhodná online vzdělávací společnost se sítí více než 250 000 spokojených studentů po celém světě.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů v části „Vlastnosti v PHP“ a ozvu se vám.