欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-05-18 20:43:16
接口与抽象类的相同点: 1、抽象类和接口都有抽象方法 2、抽象类和接口不能创建实例对象 3、抽象类和接口使用意义相同(定义一种规范) 接口与抽象类的不同点: 1、接口中的方法必须全要是抽象方法(不能用不抽象的方法),所以在接口的所有方法中不使用abstract,直接使用分号结束 2、接口中的成员属性 ......

接口与抽象类的相同点:

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; 输出常量。