- Golang也是支持面向对象(OOP)编程特性的语言,但是Golang中没有类(class),而Go语言的结构体(struct)和其他编程语言的类(class)有同等的地位,你可以理解Golang是基于struct来实现OOP特性的
- 去掉了传统OOP语言的继承、方法重载、构造函数、隐藏的this指针等等
- Golang任然有面向对象的封装、继承、多态的特性,只是实现方式和其他OOP语言不一样,比如继承: Golang没有Java中的extends 关键字,继承是通过匿名字段来实现
- Golang面向对象(OOP)很优雅,OOP本身就是语言类型系统(type system)的一部分,通过接口(interface)关联,耦合性低,也非常灵活
有疑问加站长微信联系(非本文作者)