在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
IT行业作为新兴行业近几年无论是从就业难度还是岗位待遇都是各行的领头羊,Java工程师在这其中占很大部分,成为一个Java工程师需要掌握什么技能呢?
1.CoreJava,就是Java基础、JDK的类库,很多童鞋都会说,JDK我懂,但是懂还不足够,知其然还要知其所以然,JDK的源代码写的非常好,要经常查看,对使用频繁的类,比如String,集合类(List,Map,Set)等数据结构要知道它们的实现,不同的集合类有什么区别,然后才能知道在一个具体的场合下使用哪个集合类更适合、更高效,这些内容直接看源代码就OK了。
2.多线程并发编程,现在并发几乎是写服务端程序必须的技术,那对Java中的多线程就要有足够的熟悉,包括对象锁机制、synchronized关键字,concurrent包都要非常熟悉,这部分推荐你看看《Java并发编程实践》这本书,讲解的很详细。
3.I/O,Socket编程,首先要熟悉Java中Socket编程,以及I/O包,再深入下去就是JavaNIO,再深入下去是操作系统底层的Socket实现,了解Windows和Linux中是怎么实现socket的。
4.JVM的一些知识,不需要熟悉,但是需要了解,这是Java的本质,可以说是Java的母体,了解之后眼界会更宽阔,比如Java内存模型(会对理解Java锁、多线程有帮助)、字节码、JVM的模型、各种垃圾收集器以及选择、JVM的执行参数(优化JVM)等等,这些知识在《深入Java虚拟机》这本书中都有详尽的解释,或者去oracle网站上查看具体版本的JVM规范。学习Java都需要掌握什么知识?
5.一些常用的设计模式,比如单例、模板方法、代理、适配器等等,以及在CoreJava和一些Java框架里的具体场景的实现,这个可能需要慢慢积累,先了解有哪些使用场景,见得多了,自己就自然而然会去用。
6.常用数据库(Oracle、MySQL等)、SQL语句以及一般的优化。
7.JavaWeb开发的框架,比如Spring、iBatis等框架,同样他们的原理才是最重要的,至少要知道他们的大致原理。
8.其他一些有名的用的比较多的开源框架和包,Netty网络框架,Apachecommon的N多包,Google的Guava等等,也可以经常去Github上找一些代码看看。暂时想到的就这么多吧,1-4条是Java基础,全部的这些知识没有一定的时间积累是很难搞懂的,但是了解了之后会对Java有个彻底的了解,5和6是需要学习的额外技术,7-8是都是基于1-4条的,正所谓万变不离其宗,前4条就是Java的灵魂所在,希望能对你有所帮助。
9.学会使用Git。如果你还在用SVN的话,赶紧也学习一下Git吧。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java工程师常见面试题:线程和进程的区别
在Java工程师面试的过程中,线程和进程的相关问题经常被面试官提到。同时线程和进程的区别也是Java开发学习工作中非常重要的知识点。那线程和进程有什么区别呢?和小编一起学习一下吧。
6290
2019-07-02 16:26:59
Java程序员面试题Spring Boot框架
Spring Boot框架可以简化Spring开发,并且监护spring应用开发。从本质上来说,Spring Boot就是Spring。程序员在Java的面试中,也会常常遇到关于Spring Boot的面试题,因此本文整理了一些这方面的经典知识点,有需求的小伙伴可以复习一下。
6501
2019-09-12 16:44:49
Java架构师培训要多久?学完能到什么水平?
Java架构师培训要多久?学完能到什么水平?具体问题具体分析,这需要根据学习者自身的基础和对知识吸收消化的能力判断。如果是零基础的初学者,差不多需要半年多的时间,才能到达熟练掌握Java的水平。当然,培训完也不代表一劳永逸,学习者还需要在工作中,不断积累经验和充电,才能完全胜任Java架构师的岗位。
6886
2020-01-16 11:50:28
2020年Java开发岗位受欢迎的有哪些?
目前计算机专业的大学生想成为Java工程师,参加以实战项目为主的Java职业技能培训,有效地缩短同企业具体用人需求之间的差距,会大大提高找工作的效率。Java为互联网的标准编程模式以及分布式企业级应用的事实标准,从业的方向比较多。
4118
2020-09-24 15:19:16
做Java程序员有前途吗?能从事什么岗位?
Java应用无处不在,从桌面办公应用到网络数据库等应用,从PC到嵌入式移动平台,从Java小应用程序到架构庞大的J2EE企业级解决方案处处都有Java的身影,大不部分应用使用了Java来开发控制系统和相关软件。
3185
2021-02-03 10:45:59