求教下对于 implements 理解

百度了下是接口的意思,extends继承只能继承一个类;implements可以有多个接口,
那对于
class User extends Authenticatable implements MustVerifyEmailContract
可以写成下面这样吗?
class User implements Authenticatable ,MustVerifyEmailContract

TigerLin
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

不可以,这两个是不同的概念。你想要的叫做「多继承」,在 C++ 内是存在这个概念的,PHP 为了规避多继承造成的继承关系混乱,所以采用了 Trait。

  • implements 用于表示「实现」接口,可实现多个接口。
  • extends 表示「继承」类,且只能单继承。
7年前 评论
讨论数量: 3

不可以,这两个是不同的概念。你想要的叫做「多继承」,在 C++ 内是存在这个概念的,PHP 为了规避多继承造成的继承关系混乱,所以采用了 Trait。

  • implements 用于表示「实现」接口,可实现多个接口。
  • extends 表示「继承」类,且只能单继承。
7年前 评论

如果 Authenticatable 也是一个接口,就可以这样写。

7年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!