手记

【九月打卡】第18天--PHP面向对象编程第四章节面向对象的高级实践

课程名称:PHP面向对象编程

课程章节:
4-1 对象继承-php面向对象编程
课程链接

主讲老师:Peter

课程内容

学习到了PHP中对象的继承原则,而且PHP中只能够单继承。

课程收获

一、对象的继承

定义

被继承的类叫父类,比如人,继承的类叫子类

总结

什么是继承,继承是一种方法,用来提高代码的可重用性和减少代码的冗余性,就像现实生活中的遗传一样,子女都会继承父母的部分基因,所以你一生下来你就是有人类的共同属性和行为

在PHP中可以用extends关键字来表示类的继承,后面跟父类的类名、PHP中extends后面只能跟一个类的类名,这就是php的单继承原则

继承的好处

-父类里面定义的类成员可以不用在子类中重复定义,节约了编程的时间和代价
-同一个父类的子类拥有相同的父类定义的类成员,因此外部代码调用它们的时候可以一视同仁
-子类可以修改和调整父类定义的类成员
·我们称之为重写(Overwrite)
·一旦子类修改了,就按照子类修改之后的功能执行

代码实现

<?php
class Human
{
    public $name;
    public $height;
    public $weight;

    public function eat($food)
    {
        echo $this->name."'s eating".$food."\n";
    }
}



class NbaPlayer extends Human
{
    // 定义属性
    public $team = "Bull";
    public $playerNumber = "23";


    function __construct($name, $height, $weight, $team, $playerNumber)
    {
        echo "In NbaPlayer constructor\n";
        $this->name = $name;
        $this->height = $height;
        $this->weight = $weight;
        $this->team = $team;
        $this->playerNumber = $playerNumber;
    } 

    function __destruct()
    {
        echo "Destroying". $this->name . "\n";
    }

    // 定义方法
    public function run()
    {
        echo "Running\n";
    }

    public function jump()
    {
        echo "Jumping\n";
    }

    public function dribble()
    {
        echo "Dribbling\n";
    }

    public function shoot()
    {
        echo "Shooting\n";
    }

    public function dunk()
    {
        echo "Dunking\n";
    }

    public function pass()
    {
        echo "Passing\n";
    }
}

// 类的实例化
$jordan = new NbaPlayer("Jordan","203cm","120kg","Heat","6");
echo $jordan->name."\n";

$jordan->eat("Apple"); //在子类的对象上可以直接访问父类中

课程截图


0人推荐
随时随地看视频
慕课网APP