suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Vererbungsproblem und Lösung

Dieses Beispiel instanziiert zunächst nicht die übergeordnete Klasse. Wenn die Unterklasse dann die Methode der übergeordneten Klasse nicht überschreibt, ruft $cat1->cry() die Unterklassenmethode auf echo 'Tierruf..'; Was ich verstehe ist, dass, wenn dies der Fall ist, es dann nicht heißt, dass Sie es nicht gesagt haben?

小周小周2380 Tage vor1085

Antworte allen(3)Ich werde antworten

  • Summer

    Summer2018-07-19 11:45:51

    你的cat类是继承了animal类 当cat类里没有cry方法是 你的$cat1->cry() 调用的是父类的cry方法输出的是动物叫唤。。当你的cat类有cry方法是叫做父类重写那么$cat1->cry() 优先调用子类的cry方法输出abc

    Antwort
    0
  • 无忌哥哥

    无忌哥哥2018-07-19 11:12:39

    子类没有覆盖父类,也就是子类只是继承父类,不做改变,打个比方,父类$i=1;子类没有定义$i,那么在子类中调用父类的$i还是1,如果子类覆盖了父类,比如在子类中定义了$i=2;那么最后$i就等于2。

    Antwort
    0
  • 小周

    额 好的 但是我问的方法的覆盖 也是这个意思吧?证明我理解对了吧

    小周 · 2018-07-19 11:17:09
  • StornierenAntwort