ID:               43149
 Updated by:       [EMAIL PROTECTED]
 Reported By:      henrik at bonest dot dk
-Status:           Open
+Status:           Bogus
 Bug Type:         Class/Object related
 Operating System: Windows XP
 PHP Version:      5.2.4
 New Comment:

See bug #43200.


Previous Comments:
------------------------------------------------------------------------

[2007-11-06 01:30:28] crescentfreshpot at yahoo dot com

bug #43200 closes this one

------------------------------------------------------------------------

[2007-10-31 16:48:44] crescentfreshpot at yahoo dot com

Smaller Reproduce code:
-----------------------

<?php
abstract class bizView {
    abstract public function getHTML();
}

abstract class bizViewFront extends bizView {
    abstract public function getHTML();
}
?>

Actual Result:
--------------
Fatal error: Can't inherit abstract function bizView::getHTML()
(previously declared abstract in bizViewFront)


Why one would include the second [duplicate] declaration in the child
class is beyond me.

------------------------------------------------------------------------

[2007-10-30 19:10:14] henrik at bonest dot dk

Description:
------------
An abstract class should hold one abstract methods.
The class that implements it, may not be declared abstract, but this
simple structure does not give the results expected

Reproduce code:
---------------
abstract class bizView {
    abstract public function getHTML();
}

abstract class bizViewFront extends bizView
{
    abstract public function getHTML();
    
    public function somethingelse() {
        echo "Something";
    }
}

class bizViewOutput extends bizViewFront
{
    public function getHTML() {
        echo "HTML";
    }
}

$test = new bizViewOutput();
$test->getHTML();

Expected result:
----------------
I would expect the text "HTML" to be printed, because the getHTML
function is implemented in the child class but declared abstract in the
base abstract classes. 

This is a common OOP practice. 

Actual result:
--------------
Fatal error: Can't inherit abstract function bizView::getHTML()
(previously declared abstract in bizViewFront)


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=43149&edit=1

Reply via email to