golang faq 精选

go 是面向对象语言吗?

是也不是
说是 因为 go 有 类型和方法 支持面向对象的方式编程。
说不是 因为go没有继承的概念
go 认为 通过 interface 和 内嵌 的方式 编程更好
go 中的方法相比于java,c++更通用,可以用在任何类型,甚至是内置类型上,不一定要属于某种class

go 为什么没有继承

继承需要显示声明,梳理不同类型之间的关系,比较复杂
接口 只要方法满足接口条件即可,轻量,简单

go 为什么不支持函数重载

函数重载 只在小部分时候有用,很多时候令人困惑。为了简化语言,不支持函数重载

你可能感兴趣的:(golang faq 精选)