关于Java虚拟机的问题

来源:6-4 如何在代码的任意位置为当前 Activity 添加 View?

慕妹2978617

2020-05-09

老师我工作2年,其实在工作过程中,看相关的知识其实陆陆续续这部分的知识,文章啊,视频啊,看了一些,但是实际中也用的很少,最多用过1,2次弱引用。尤其我是在小公司,app逻辑也不是很复杂。对虚拟机,GC更是不那么敏感,其实中级,或是中高级,这部分应该掌握什么程度?这些知识知识面试用来作为评估一个人的学习态度嘛?感觉移动开发用的太少拉。

写回答

1回答

bennyhuo

2020-05-09

很多同学觉得高级知识用不到,不是没有这样的需求,而是即便遇到了这样的需求,他也不知道该用这些高级的知识。

高级工程师要能设计框架,主动创新,攻克难关。解决一个问题需要的知识往往需要对以往积累的各种知识进行综合,如果你只知道一点点知识,那么后面你的技术上限也是显而易见的。

我自己的经历来看,我有无数次不经意学到的一点儿东西,在后来遇到技术难题的时候都能给我带来思路上的突破,这也意味着我们除了需要在一个方向上深入学习,还需要多看看其他领域类似问题的解决思路和方法。

所以我们面试的时候看一个人对知识的掌握情况,主要是想要了解他能胜任多大的挑战,能扛起多么复杂的设计,来公司不是学习的,我们不会在意候选人的学习态度,而是在意他在未来能给公司带来多少产出。


---

对虚拟机,GC更是不那么敏感,其实中级,或是中高级,这部分应该掌握什么程度?

不需要了解太深,熟悉概念就行。知道类加载机制,源码的编译机制,这些都可以在工作中循序渐进的接触到。其实你就看下我的课程目录就知道了,虚拟机的部分涉及的并不多。


我觉得你可能个人发展的目标不是很明确,你可以看下周围同事里面最强的,向他学习,不管他工作多少年,花三年超过他然后 要么替代他,要么换工作再到一个新的更强的环境中进步。

0
2
bennyhuo
回复
慕妹2978617
加油!
2020-05-09
共2条回复

大厂资深面试官 带你破解Android高级面试

改变视野和思维 深度与广度兼备的 Android 进阶面试指导课程

1636 学习 · 222 问题

查看课程