总结:心得体会
既然选择这个行业,选择了做一个程序员,也就明白只有不断学习,积累实战经验才有资格往上走,拿高薪,为自己,为父母,为以后的家能有一定的经济保障。
学习时间都是自己挤出来的,短时间或许很难看到效果,一旦坚持下来了,必然会有所改变。不如好好想想自己为什么想进入这个行业,给自己内心一个答案。
面试大厂,最重要的就是夯实的基础,不然面试官随便一问你就凉了;其次会问一些技术原理,还会看你对知识掌握的广度,最重要的还是你的思路,这是面试官比较看重的。
最后,上面这些大厂面试真题都是非常好的学习资料,通过这些面试真题能够看看自己对技术知识掌握的大概情况,从而能够给自己定一个学习方向。包括上面分享到的学习指南,你都可以从学习指南里理顺学习路线,避免低效学习。
大厂Java架构核心笔记(适合中高级程序员阅读):
- 标识符用来命名变量、类型等程序实体。一个标识符实际上就是一个或是多个字母(AZ和az)数字(0~9)、下划线_组成的序列,但是第一个字符必须是字母或下划线而不能是数字。
- 基本数据类型
- 运算符
-
算数运算符和Java一样,关系运算符,逻辑运算符也一致
-
&(与), |(或), 和 ^(位异) (两个数不一致才显示1),<<左移运算符,左移多少位,就相当于乘以2的多少次方,>>右移运算符,相当于除以2的多少次方
-
赋值运算符=,可以和算数运算符,和位运算符结合使用,例如:+=,-=,<<=
-
&变量名 :用于返回变量存储的地址 *变量名:一个指针变量
- 变量声明
变量声明和java有一定的区别,java中命名先进行类型的确定,而golang中先声明变量名,例如:var 变量名 变量类型,var demo int
- 条件运算符
- if-else:if语句在判断时不需要加()外,和Java一样,for循环也是不需要加()外其他都和Java一致,还有注意的是在if前可以执行一个赋值语句,跟 for 一样,
if
语句可以在条件之前执行一个简单的语句。由这个语句定义的变量的作用域仅在 if 范围之内 例如:
if v := math.Pow(x, n); v < lim{}
- switch:和java的区别在于可以对类型进行一个判断,基本语法和Java类似,如下:
switch var1 { case val1: ... case val2: ... default: ... }
要注意使用 fallthrough 会强制执行后面的 case 语句,fallthrough 不会判断下一条 case 的表达式结果是否为 true。
- golang中是没有while循环了,可以通过for循环来进行一个取代,如下:
for true{
fmt.Println(“aa”)
}
- select:以下描述了 select 语句的语法:
每个 case 都必须是一个通信
所有 channel 表达式都会被求值
所有被发送的表达式都会被求值
如果任意某个通信可以进行,它就执行,其他被忽略。
如果有多个 case 都可以运行,Select 会随机公平地选出一个执行。其他不会执行。
否则:
如果有 default 子句,则执行该语句。
如果没有 default 子句,select 将阻塞,直到某个通信可以运行;Go 不会重新对 channel 或值进行求值。
最后
由于篇幅限制,小编在此截出几张知识讲解的图解
ums/4f45ff00ff254613a03fab5e56a57acb)收录**