PHP开发者你需要了解的PHP与go的对比(转载)
本文讲解关于PHP中的class和go中的struct相关知识的对比
本文根据原创文章稍作整理后完成,如果需查看原文可以点击这里 (你可能需要翻墙)
1. class和struct
PHP
中的class
对应于go
中的struct
, 详细定义使用可参看下图:
2. interface
PHP
与go
中关于接口的关键词相同,都是interface
,不同的是,
PHP
中的接口的实现由class
使用implements
关键词实例化go
中只需要struct
的内置方法包含 interface
的所有方法即可
具体定义使用,可参见下图:
3. 依赖注入
依赖注入
PHP
和go
大体相同
4. 继承
PHP
中的继承使用extends
关键词,由class 实现, 需要的时候可能
调用parent::__construct()
方法go
中的继承很简单 直接在struct
中加上父结构体的名称即可
语言 | 变量和方法类型 | 说明 |
---|---|---|
php |
private /protected /public
|
私有/保护/公有 |
go | 方法或变量首字母小写 /方法或变量首字母大写 | 私有/公有 |
具体方法继承及使用见下图: