cvs: ZendEngine2 / ZEND_CHANGES

From: Date: Wed, 11 Feb 2004 22:38:05 +0000
Subject: cvs: ZendEngine2 / ZEND_CHANGES
Groups: php.zend-engine.cvs 
Request: Send a blank email to php-zend-engine-cvs+get-2360@lists.php.net to get a copy of this message
helly Wed Feb 11 17:38:05 2004 EDT Modified files: /ZendEngine2 ZEND_CHANGES Log: Update http://cvs.php.net/diff.php/ZendEngine2/ZEND_CHANGES?r1=1.74&r2=1.75&ty=u Index: ZendEngine2/ZEND_CHANGES diff -u ZendEngine2/ZEND_CHANGES:1.74 ZendEngine2/ZEND_CHANGES:1.75 --- ZendEngine2/ZEND_CHANGES:1.74 Tue Feb 10 06:20:52 2004 +++ ZendEngine2/ZEND_CHANGES Wed Feb 11 17:38:05 2004 @@ -184,6 +184,38 @@ Old code that has no user-defined classes or functions named 'interface' or 'implements' should run without modifications. + + An interface may extend one or more base interfaces (but not + implement them). Neither a class nor an interface can inherit + methods of the same name from different root interfaces. + + Example: + + <?php + interface Printable { + function dump(); + } + + interface Streamable { + function writeToStream(); + static function readFromStream(); + } + + class PrintableExample implements Printable, Streamable { + public function dump() { + // ... + } + function writeToStream() { + // ... + } + static function readFromStream() { + // ... + } + } + ?> + + A class that does not implement all interface methods must be + declared as an abstract class. * Class Type Hints.

« previous php.zend-engine.cvs (#2360) next »