【面向对象】parent调用父类构造函数

大家在学习PHP语言的时候,都会对与指针相关的内容感到特别的头疼。很难理解并不代表不用了解。下面我们就来看看PHP parent是如何指向父类指针的。

我们知道PHP parent是指向父类的指针,一般我们使用parent来调用父类的构造函数。

  1. < ?php  
  2. //基类  
  3. class Animal  
  4. {  
  5. //基类的属性  
  6. public $name; //名字  
  7. //基类的构造函数  
  8. public function __construct( $name )  
  9. {  
  10. $this->name = $name;  
  11. }  
  12. }  
  13. //派生类  
  14. class Person extends Animal   
  15. //Person类继承了Animal类  
  16. {  
  17. public $personSex; //性别  
  18. public $personAge; //年龄  
  19. //继承类的构造函数  
  20. function __construct( $personSex, 
    $personAge )  
  21. {  
  22. parent::__construct( "heiyeluren" );
     //使用parent调用了父类的构造函数  
  23. $this->personSex = $personSex;  
  24. $this->personAge = $personAge;  
  25. }  
  26. function printPerson()  
  27. {  
  28. print( $this->name. " is " .$this->
    personSex. ",this year " .$this->
    personAge );  
  29. }  
  30. }  
  31. //实例化Person对象  
  32. $personObject = new Person( "male", "21");  
  33. //执行打印  
  34. $personObject->printPerson();   
  35. //输出:heiyeluren is male,this year 21  
  36. ?>  

我们注意这么几个细节:成员属性都是public的,特别是父类的,是为了供继承类通过this来访问。我们注意关键的地方,第25行:parent:: __construct( "heiyeluren" ),这时候我们就使用PHP parent来调用父类的构造函数进行对父类的初始化,因为父类的成员都是public的,于是我们就能够在继承类中直接使用 this来调用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值