抽象类和接口

抽象类

  • 抽象类是一种特殊的类,使用abstract修饰

  • 抽象类不能被实例化,只能被继承

  • 抽象方法不能设置使用private 修饰,因为抽象类不能被实例化,私有成员没有意义。

  • abstract 还可以修饰方法,称之为抽象方法:抽象方法所在的类必须是抽象类,抽象方法不能有方法体

  • 如果子类继承了抽象类,要么子类自身是抽象类,要么实现所有抽象方法

  • 抽象类的目的是规范子类,通常会在比较大型或者规范的项目中才会使用

  • 抽象类中不允许有成员属性

 抽象类就是一个类的服务提供商,拥有众多服务,你不用必须用,当需要的时候你来用就可以,如果你觉得不提供服务不满意,你还可以自己来做。

接口

  • 接口不是类,但与类有类似的结构,目的是为了约束类。

  • 接口不能实例化,但类可以实现接口(注意是实现不是继承)

  • 接口是用来规范项目体系,提供一些必须的行为规范

  • 接口成员只允许有两类

    • 接口常量:const

    • public的接口方法(普通方法和静态方法)

  • 接口的方法为抽象方法,没有方法体(不需要abstract 关键字,因为接口方法都是抽象方法)

  • 实现接口的类:

    • 可以访问接口的常量:接口常量不能被重写

    • 需要实现所有的接口方法(除非本身是抽象类)

    • 接口方法实现不允许增加控制权限(必须为 public)

 接口类就是一个类的领导者,指明方向,子类必须完成它指定方法。



详细介绍:

https://learnku.com/articles/4621/abstract-class-abstract-class-and-interface-interface-in-php


nba2k2球员数据
请先登录后发表评论
  • 最新评论
  • 总共0条评论