何为抽象类

<?php
/**
* Created by PhpStorm.
* User: fu
* Date: 2017/7/14
* Time: 9:51
*/

class Student{

protected $name;

public function __construct($name)
{
$this->name = $name;
}

/**
* @param mixed $name
*/
public function setName($name)
{
if(isset($name) && is_string($name))
$this->name = $name;
}

}

/**
* Class Animal
* 使用抽象关键字修饰的类就叫做抽象类
* 抽象类不一定需要有抽象方法;但是包含抽象方法的类必须是抽象类
* 抽象类不能够被实例化
*/
abstract class Animal{

/**
* @return mixed
* 使用abstract修饰的函数方法称为抽象方法
* 抽象方法只有函数的声明部分,不包含实现部分,且要用分号代表结束
* 继承了带有抽象方法的类必须实现抽象方法的定义
*/
public abstract function shout();

}
abstract class Dog extends Animal{


}
class Cat extends Animal{

public function shout(){
echo '抽象函数方法被实现';
}

}

//$animal = new Animal();

原文地址:https://www.cnblogs.com/zxy945/p/7190894.html