单个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并发体系思维导图,希望对你有所帮助。