2017-09-28 4 views

Antwort

1

Sie können das final Stichwort:

Beispiele:

class CanBeInherited { 
    public final function cantBeInherited() { 
     ... 
    } 
} 

final class CannotBeInherited { 
    public function cantBeInheritedEither() { 
     ... 
    } 
} 

class Child extends CanBeInherited { } //This is fine 
class Child2 extends CanBeInherited { 
    public function cantBeInherited() {} //Error 
} 
class Child3 extends CannotBeInherited {} //Error 
+0

können Sie mir bitte sagen, warum diese Zeile ein Fehler ist. Klasse Child3 erweitert CantBeParent {} – Sucharitha

+0

Weil 'CantBeParent'' final' ist und daher nicht übergeordnet sein kann (weil das für eine Klasse letztendlich bedeutet). – apokryfos

+0

haben es geschafft. Danke (ich habe nicht gesehen, dass sich child3 von cantebeparent ausdehnt, ich dachte, dass es canbeparent ist). – Sucharitha

1

declare Funktion auf diese Weise in Superklasse

class Foo 
{ 
    final public function bar() 
    { 
     //Do action A 
    } 
} 
Verwandte Themen