亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

抽象類與接口

在php中可以通過abstract關鍵字聲明抽象類,有時候我們需要一個類必須具備某些公共的方法,此時就可使用接口技術

1,創(chuàng)建一個animal類

Animal.class.php代碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/3 0003
 * Time: 下午 2:13
 */
abstract class Animal{
    public $gender;  //性別
    public $size;      //尺寸
    public function __construct($gender,$size){
        $this->gender=$gender;
        $this->size=$size;
    }
    //限制非抽象類都需要調用此方法
    abstract protected function getGender();
    //final要求每個子類必須存在該方法并且不能重寫
    final public function getSize(){
        return $this->size;
    }
}

2,創(chuàng)建一個dog類

Dog.class.php代碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/3 0003
 * Time: 下午 2:20
 */
header('content-type:text/html;charset=utf8');
require './Animal.class.php';
class Dog extends Animal {
    /**
     * @return mixed
     */
    public function getGender()
    {
        return "'$this->gender'狗";
    }
}
$dog=new Dog('公','大');
echo $dog->getSize();
echo $dog->getGender();

運行結果如下:

微信圖片_20180303144604.png

3,創(chuàng)建一個cat類

Cat.class.php代碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/3 0003
 * Time: 下午 2:22
 */
header('content-type:text/html;charset=utf8');
require './Animal.class.php';
class Cat extends Animal { 
    public function getGender()
    {
        return "'$this->gender'貓";
    }
}
$dog=new Cat('母','小');
echo $dog->getSize();
echo $dog->getGender();

運行結果如下:

微信圖片_20180303144607.png

4,接口類的調用

創(chuàng)建interpace.php文件,代碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/3/3 0003
 * Time: 下午 2:34
 */
header('content-type:text/html;charset=utf8');
//定義usb接口
interface usb{
    public function connect(); //連接
    public function transfer(); //傳輸
    public function disconnect(); //斷開
}
class mp3 implements usb{
    public function connect()
    {
        // TODO: Implement connect() method.
        echo "連接...<br>";
    }
    public function transfer()
    {
        // TODO: Implement transfer() method.
        echo "傳輸...<br>";
    }
    public function disconnect()
    {
        // TODO: Implement disconnect() method.
        echo "斷開...<br>";
    }
}
$mp3=new mp3();
$mp3->connect();
$mp3->transfer();
$mp3->disconnect();

運行結果:

微信圖片_20180303145045.png

繼續(xù)學習
||
<?php echo '抽象類與接口的使用'; >
提交重置代碼