> **面试企业** 虾皮、知乎
## 答案(溪尾)
Go也称为Golang,是一种开源编程语言,Go可以轻松构建可靠,简单和高效的软件。Go是键入的静态编译语言。Go语言提供垃圾收机制,CSP风格的并发性,内存安全性和结构类型。
Java是一种用于一般用途的计算机编程语言,它是基于类的,并发的和面向对象的。Java专门设计为包含很少的实现依赖项。Java应用程序在JVM(Java虚拟机)上运行。它是当今最著名的编程语言之一。Java是一种用于为多个平台开发软件的编程语言。Java应用程序上的编译代码或字节码可以在大多数操作系统上运行,包括Linux,Mac操作系统和Linux。Java的大部分语法都源自C ++和C语言。
go语言和java之间的区别
- 函数重载
Go上不允许函数重载,必须具有方法和函数的唯一名称;
java允许函数重载。
- 速度
go的速度比java快
- 多态
Java默认允许多态。而Go没有。
- 路由配置
Go语言使用HTTP协议进行路由配置;
java使用Akka.routing.ConsistentHashingRouter和Akka.routing.ScatterGatherFirstCompletedRouter进行路由配置。
- 可扩展性
Go代码可以自动扩展到多个核心;而,Java并不总是具有足够的可扩展性。
- 继承
Go语言的继承通过匿名组合完成:基类以Struct的方式定义,子类只需要把基类作为成员放在子类的定义中,支持多继承;
Java的继承通过extends关键字完成,不支持多继承。
3楼 <a href="/user/AnkoGo123" title="@AnkoGo123">@AnkoGo123</a> 你这样的二货这世道不多见了, 是被生活压力逼疯了么...小学没毕业的你是无法理解为啥OOP和面对对象的编程语言依然统治了业务开发的顶端多年还将继续统治下去.业内普遍认为组合好于继承? 这个业内是你家的吧? java jvm是垃圾? 哈哈哈, 笑死人了, 就算你说得对, 但是你对这样的Jjvm垃圾技术都一无所知更不用说自研一个类似jvm的东西来彰显你不是个垃圾.你扯那么多, 也妨碍不了大多数公司的技术选择和就业方向. 有毛用?孩子你不适合搞开发, 如果你缺钱请去搬砖, 如果不缺, 爱干啥干啥去吧.
#7
更多评论
这个回答有点扯淡.
速度, java并不比go慢, 尤其是服务器上充分加热过的代码, 这个已经经过很多人的验证了.
集成, Go那根本就不叫继承, 因为继承是可以is 而不仅仅是has, 很明显目前的go做不到is, java多继承是通过接口实现的.这种也是OOP语言实现多继承的趋势. C++的多继承过于复杂而且容易出问题.
#1