php 继承,php有关面向对象继承构造函数初始化的问题?

用户投稿 181 0

关于“self_php_继承”的问题,小编就整理了【2】个相关介绍“self_php_继承”的解答:

php有关面向对象继承构造函数初始化的问题?

写几点提示供参考:

1、在类的继承中,扩展或派生出来的类(子类)拥有其基类(父类)的所有变量和函数,并包含所有派生类中定义的部分。

也就说,你上面的在子类里类似

private $debugmessage;

这句代码其实没什么意义。

2、如果你在子类里,又定义了与父类里同名的方法,那么,父类的方法会被覆盖,也就是说,你调用的是子类实现的代码。

3、

this 指向的是当前对象

self 指向当前的类

parent 指向的是父类

浅析Python中的多重继承?

   这篇文章主要介绍了Python中的多重继承,是Python学习中的基本知识,代码基于Python2.x版本,需要的朋友可以参考下

  继承是面向对象编程的一个重要的方式,因为通过继承,子类就可以扩展父类的功能。

  回忆一下Animal类层次的设计,假设我们要实现以下4种动物:

  Dog - 狗狗;

  Bat - 蝙蝠;

  Parrot - 鹦鹉;

  Ostrich - 鸵鸟。

  如果按照哺乳动物和鸟类归类,我们可以设计出这样的类的层次:

  但是如果按照“能跑”和“能飞”来归类,我们就应该设计出这样的类的层次:

  如果要把上面的两种分类都包含进来,我们就得设计更多的层次:

  哺乳类:能跑的哺乳类,能飞的哺乳类;

  鸟类:能跑的鸟类,能飞的鸟类。

  这么一来,类的层次就复杂了:

  如果要再增加“宠物类”和“非宠物类”,这么搞下去,类的数量会呈指数增长,很明显这样设计是不行的。

  正确的做法是采用多重继承。首先,主要的类层次仍按照哺乳类和鸟类设计:

  ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 class Animal(object): pass   # 大类: class Mammal(Animal): pass   class Bird(Animal): pass   # 各种动物: class Dog(Mammal): pass   class Bat(Mammal): pass   class Parrot(Bird): pass   class Ostrich(Bird): pass

到此,以上就是小编对于“self_php_继承”的问题就介绍到这了,希望介绍关于“self_php_继承”的【2】点解答对大家有用。

抱歉,评论功能暂时关闭!