php-abstract-class-and-interface
PHP抽象类和接口
- 抽象类与接口
- 抽象类内可以包含非抽象函数,即可实现函数
- 抽象类内必须包含至少一个抽象方法,抽象类和接口均不能实例化
- 抽象类可以设置访问级别,接口默认都是public
- 类可以实现多个接口但不能继承多个抽象类
- 类必须实现抽象类和接口里的抽象方法,不一定要实现抽象类的非抽象方法
- 接口内不能定义变量,但是可以定义常量
示例代码
<?php
interface int1{
const INTER1 = 111;
function inter1();
}
interface int2{
const INTER1 = 222;
function inter2();
}
abstract class abst1{
public function abstr1(){
echo 1111;
}
abstract function abstra1(){
echo 'ahahahha';
}
}
abstract class abst2{
public function abstr2(){
echo 1111;
}
abstract function abstra2();
}
class normal1 extends abst1{
protected function abstr2(){
echo 222;
}
}result
PHP Fatal error: Abstract function abst1::abstra1() cannot contain body in new.php on line 17
Fatal error: Abstract function abst1::abstra1() cannot contain body in php on line 17相关文章