< PHP OOP

PHP OOP objektumok

Szerző: Sallai András

Copyright © Sallai András, 2020, 2022

CC Attribution-Share Alike 4.0 International

Web: https://szit.hu

Objektum létrehozása

Emlékezzünk! Az objektumokat az osztályokból hozzuk létre. Úgy mondjuk az osztályt példányosítjuk. A példányosítást mindig a „new” operátorral végezzük:

<?php $objektum_nev = new Osztalynev(); ?>

Ha nincs paraméter a zárójelek elhagyhatók:

<?php $objektum_nev = new Osztalynev; ?>

Járművek

Lássuk a fenti járműves példát:

<?php class Kocsi { public $rendszam; public $szin; public $ar; public function __construct($rendszam, $szin, $ar) { $this->rendszam = $rendszam; $this->szin = $szin; $this->ar = $ar; } public function mutatReszletek() { print "Szia, éppen most készítettem: {$this->rendszam} - {$this->szin} | {$this->ar} Ft <br />"; } } $kocsi1 = new Kocsi("Mercedes", "Fehér", "12000000"); ?>

Ezek után a $kocsi1 objektumon meghívhatjuk a mutatReszletek() metódust:

<?php class Kocsi { public $rendszam; public $szin; public $ar; public function __construct($rendszam, $szin, $ar) { $this->rendszam = $rendszam; $this->szin = $szin; $this->ar = $ar; } public function mutatReszletek() { print "Szia, éppen most készítettem: {$this->rendszam} - {$this->szin} | {$this->ar} Ft <br />"; } } $kocsi1 = new Kocsi("Mercedes", "Fehér", "12000000"); $kocsi1->mutatReszletek(); ?>

Létrehozhatunk egy újabb jármű példányt is:

<?php class Kocsi { public $rendszam; public $szin; public $ar; public function __construct($rendszam, $szin, $ar) { $this->rendszam = $rendszam; $this->szin = $szin; $this->ar = $ar; } public function mutatReszletek() { print "Szia, éppen most készítettem: {$this->rendszam} - {$this->szin} | {$this->ar} Ft <br />"; } } $kocsi1 = new Kocsi("Mercedes", "Fehér", "12000000"); $kocsi2 = new Kocsi("Ford", "Piros", "3500000"); $kocsi1->mutatReszletek(); $kocsi2->mutatReszletek(); ?>

Gyakorlat

Mi az osztály?

Mi az objektum?

Mi a különbség az osztály és az objektum között?

Készíts egy saját osztály, majd deklarálj belőle objektumot.