note 95630 deleted from language.oop5.inheritance by danbrown

From: Date: Wed, 13 Jan 2010 15:50:40 +0000
Subject: note 95630 deleted from language.oop5.inheritance by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-164918@lists.php.net to get a copy of this message
Note Submitter: php at knorrit dot de ---- In Addition to Jarrods Note, which doesn't make clear, what an abstract class is good for, I will show how to use abstract methods. <?php abstract class Cheese { /** * You can call this function in every Instance of * Cheddar and Mold (see below) */ public abstract function tastes(); } class Cheddar extends Cheese { public function tastes() { return "good"; } } class Mold extends Cheese { public function tastes() { return "bad"; } } $cheese = new Cheddar(); echo $cheese->tastes(); // echoes good $cheese = new Mold(); echo $cheese->tastes(); // echoes bad function tryCheese(Cheese $cheese) { echo $cheese->tastes(); } $cheese = new Cheddar(); tryCheese($cheese); // echoes good $cheese = new Mold(); tryCheese($cheese); // echoes bad ?>

« previous php.notes (#164918) next »