31
回答
一般JAVA高级工程师的知识深度?
科大讯飞通用文字识别100000次/天免费使用。立即申请   

一个Java高级工程师,对jdk重点源码深刻理解,达到如下程度?。

例如为什么Thread里有一个ThreadLocalMap类型的变量

ThreadLocalMap为什么作为ThreadLocal的内部类

ThreadLocalMap的扩缩容机制以及碰撞检测

ThreadLocalMap的Entry为什么使用弱引用类型

有些类中的capacity,threshold,position,mark,limit这些成员变量有什么用,如何影响类内部的运算?如何设置?

同理对其他重点类也要掌握至此,甚至达到凭记忆默写部分源码或关键源码的程度。

重点IO、线程、集合,锁、字符串(String,StringBuffer,StringBuilder)。。。。

JVM了解GC算法大类,每个大类里具体有哪些算法,

并可以叙述算法步骤,并了解每一步的理由。

熟练讲述常见JVM的内存结构,历代结构变迁及其改进理由。

各类JVM中GC垃圾收集器的种类以及使用场景(优缺点),各类收集器分别使用了什么GC算法来达到它们所描述的性能及功能要求,并且是如何达到的。

可以依据具体的应用场景,选择合适的JVM及参数,尽可能挖掘应用程序和宿主机潜力。

拥有手动改写字节码的能力(这里含义就是了解字节码结构及含义)

了解部分重点native方法的实现逻辑(不需要了解语法)

熟练说出各个JDK版本变迁的主要核心内容

对于重要的JSR可以快速说出JSR编号

熟练应用JAVA EE技术进行开发,可以快速上手各类Java开发框架这种自然是必备条件。

以上,仅限于JAVA技术平台,是暂时想到的,你们觉得过了还是不够?

<无标签>
举报
trivia
发帖于3周前 31回/5K+阅
顶部