PHP中接口与抽象类的异同点有哪些

接口与抽象类的相同点:

1、抽象类和接口都有抽象方法

2、抽象类和接口不能创建实例对象

3、抽象类和接口使用意义相同(定义一种规范)

接口与抽象类的不同点:

1、接口中的方法必须全要是抽象方法(不能用不抽象的方法),所以在接口的所有方法中不使用abstract,直接使用分号结束

2、接口中的成员属性,必须是常量(不能有变量)

3、接口所有权限必须是公有的(public

4、声明接口不使用class,使用interface

1

2

3

4

5

6

7

8

9

interface Person{

 public $name; //不能声明变量 报错

  const NAME='tom'// 可以声明常量

 function test();  //因为接口中全部是抽象方法 所以 省去 abstract 。

 function test1();

Protect function test3() 报错 只可以是 public

}

$re=new Person; //报错 不可以 创建实例化 对象 。

echo Person:: NAME; 输出常量。

posted @ 2019-11-09 20:45  .Ronin  阅读(371)  评论(0编辑  收藏  举报