class JakasClasa{
var $_zmienna= 15;
var jest niepotrzebne, to nie pascal

, zamiast var pisz public
generalnie uzywaj operatora widocznosci przy zmiennych tzn. public private albo protected
var $_obj;
function __construct() {
$this->_obj= JakasInnaClasa::getInstance();
}
uzywaj operatora widocznosci przy metodach tzn. public private albo protected
odwolujesz sie do statycznej metody "getInstance()", klasa potomna nie ma jej zdefiniowanej, fatal error
function uruchom(){
$this->_obj->_start();
}
to co robisz jest bardzo dziwne, tworzysz obiekt klasy rodzica, w nim tworzysz obiekt klasy potomnej i opakowujesz metode "start" w metode "uruchom", generalnie od dupy strony.
Ewentualnie logiczne jest tu tylko uzycie singletona, bo bez niego wpadlbys w petle rekurencyjna (tzn. tworzenie dowolnego obiektu klasy potomnej lub rodzica, uruchamialoby konstruktor rodzica ktory tworzyl by nastepny obiekt, co uruchamialoby kontruktor ktory tworzylby nastepny obiekt...), ale ciezko mi wymyslec powod stosowania takiej konstrukcji takze z singletonem..
class JakasInnaClasa extends JakasClasa{
function _start(){
}
}
nie wiem dlaczego wszedzie wciskasz znak _, jesli tak oznaczasz pola/metody private to uzywaj do tego private
poza tym dlaczego mialoby to nie dzialac ? powinno dzialac calkiem ok
$a = new JakasClasa();
$a->uruchom();
da nam 15
$a = new JakasInnaClasa();
$a->_start();
tez da nam 15
$a = new JakasInnaClasa();
$a->uruchom();
i nawet to tez da nam 15
podsumowujac, to co tutaj wkleiles nie zadziala, rzuci Fatal Errorem. Gdybys zrobil z klasy potomnej singletona - do czego prawdopodobnie zmierzasz - to generalnie powinno zadzialac jesli dosc zmyslnie napiszesz konstruktor klasy potomnej. Pomijajac wspomniany Fatal, blad jest w miejscu ktorego tutaj nie wkleiles, widocznie masz nas za jasnowidzow