单个case中,可以出现多个结果选项;

只有在case中明确添加fallthrough关键字,才会继续执行紧跟的下一个case。

3、Go语言中没有隐藏的this指针,这句话是什么意思?

方法施加的对象显式传递,没有被隐藏起来;

Golang的面向对象表达更直观,对于面向过程只是换了一种语法形式来表达;

方法施加的对象不需要非得是指针,也不用非得叫this。

4、说说Go语言的main函数

main函数不能带参数;

main函数不能定义返回值;

main函数所在的包必须为main包;

main函数中可以使用flag包来获取和解析命令行参数。

5、说说Go语言的同步锁?

(1) 当一个Goroutine获得了Mutex后,其他Goroutine就只能乖乖的等待,除非该Goroutine释放这个Mutex。

(2) RWMutex在读锁占用的情况下,会阻止写,但不阻止读。

(3) RWMutex在写锁占用情况下,会阻止任何其他Goroutine(无论读和写)进来,整个锁相当于由该Goroutine独占。

6、说说Go语言的channel特性?

A. 给一个 nil channel 发送数据,造成永远阻塞;

B. 从一个 nil channel 接收数据,造成永远阻塞;

C. 给一个已经关闭的 channel 发送数据,引起 panic;

D. 从一个已经关闭的 channel 接收数据,如果缓冲区中为空,则返回一个零值;

E. 无缓冲的channel是同步的,而有缓冲的channel是非同步的。

7、Go语言触发异常的场景有哪些?

A. 空指针解析;

B. 下标越界;

C. 除数为0;

D. 调用panic函数。

8、说说Go语言的beeGo框架?

A. beeGo是一个Golan

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

g实现的轻量级HTTP框架;

B. beeGo可以通过注释路由、正则路由等多种方式完成url路由注入;

C. 可以使用bee new工具生成空工程,然后使用bee run命令自动热编译。

9、说说Go语言的Goconvey框架?

A. Goconvey是一个支持Golang的单元测试框架;

B. Goconvey能够自动监控文件修改并启动测试,并可以将测试结果实时输出到web界面;

C. Goconvey提供了丰富的断言简化测试用例的编写。

10、Go语言中,GoStub的作用是什么?

最后

现在其实从大厂招聘需求可见,在招聘要求上有高并发经验优先,包括很多朋友之前都是做传统行业或者外包项目,一直在小公司,技术搞的比较简单,没有怎么搞过分布式系统,但是现在互联网公司一般都是做分布式系统。

所以说,如果你想进大厂,想脱离传统行业,这些技术知识都是你必备的,下面自己手打了一份Java并发体系思维导图,希望对你有所帮助。

GO语言常见基础面试题,java技术方案文档_后端开发