• 招生咨詢熱線:4008-569-579 
  • 手機版
    用手機掃描二維碼直達商品手機版
招生咨詢熱線
4008-569-579
機構主頁 > 機構新聞 > java要學到什么程度才能勝任工作
機構主頁 > 機構新聞>java要學到什么程度才能勝任工作

java要學到什么程度才能勝任工作

來源:北京達內教育        時間:2023-05-25        熱度:47℃        返回列表

Java作為面向對象編程語言,不僅吸收了C++語言的各種優(yōu)點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用的兩個特征。也正是由于其簡單性、可移植性、安全性、動態(tài)性等特點,Java成為了服務器端的頂梁柱,保護著網站的一方安全。既然Java語言這么優(yōu)秀,那么,如果想要以java去找工作,一個Java初學者要學多少Java知識,才能找到第一份Java工作呢?

首先我們先要了解一下在工作過程中需要用到的java基礎知識有哪些:

1、synchronized static修飾類和方法有什么區(qū)別?

2、HashMap的原理,底層數據結構,rehash的過程,指針碰撞問題?

3、HashMap的線程安全問題,為什么會產生這樣的線程安全問題?

3、ConcurrentHashMap的數據結構,底層原理,put和get是否線程安全?

5、Java IO的一些內容,包括NIO,BIO等?

如果以上的基礎知識大家能夠運用自如,也就是說工作過程中做一些基本的事情還是可以的,但是是遠遠不過的,如果想要在工作過程中有自己的一席之地還是要學會以下幾點,才能夠勉強進入企業(yè)工作。

一、Java線程池的構造方法,里面參數的含義,以及原理:

1、volatile和ThreadLocal解決了什么問題

2、CAS在Java中的具體實現

3、Java虛擬機的構成,以及一個Java對象的生命周期,還有堆棧和方法區(qū)中存儲的內容

4、JVM的GC過程,包括一些實際問題的分析,比如說明一個現象,讓你分析可能是什么原因會導致這樣的問題,應該如何對JVM參數進行調優(yōu)

5、synchronized和Lock的區(qū)別,以及底層實現原理

6、 Full GC和Minor GC觸發(fā)的條件

7、 GC Roots的選擇

8、 jmap,jstat,jstack等的使用場景,MAT等

9、ClassLoader的加載過程

10、CountDownLatch、CyclicBarrier和Semaphore等

11、Java 8 的新特性等

二、數據庫:這里的數據庫包含兩種,一種一般是MySQL,另外是NoSql數據庫,包括Redis、MongoDB等。一般會問的問題有:

1、inner join和left join等的區(qū)別

2、SQL調優(yōu),explain,profile等

3、InnoDB和Myisam的區(qū)別

4、ACID

5、數據庫的事務隔離級別,以及他們分別能解決什么問題

6、Redis的幾種數據結構

7、Redis是單線程還是多線程

8、Redis的持久化

9、悲觀鎖和樂觀鎖的含義

10最左前綴索引,索引的數據結構,聚簇索引等(這塊還沒搞明白)

三、框架

因為spring是我們常用的框架,所以這塊的內容會問的比較多,也會比較細。

1、Spring的兩大特性(IoC和AOP)

2、Spring的bean的生命周期

3、Spring是如何解決Bean的循環(huán)引用問題的

4、AOP的兩種實現方式,以及兩者的區(qū)別(這里其實使用了動態(tài)代理,具體動態(tài)代理分為兩種,一種是JDK的動態(tài)代理,主要使用的是JDK的反射,還有一種是CGLib,兩者區(qū)別可以自己搜索,文章比較多)

5、AOP一般的使用場景

6、Spring的事務原理

MyBatis:這塊問到的比較簡單些:

1、$和#的區(qū)別

2、MyBatis和Hibernate的區(qū)別

3、源碼,一般問的比較少

Dubbo:因為平時自己用到了Dubbo,所以這塊會有問到:

1、RPC的原理

2、Dubbo是如何完成遠程調用的

3、Dubbo如何進行調優(yōu)

4、Dubbo的通信協議

5、Dubbo是如何實現負載均衡的

ZooKeeper:

1、ZK的使用場景

2、ZK的選舉機制

3、ZK的節(jié)點類型

4、一致性Hash原理

數據結構和算法:

這塊的內容是基礎,如果面試官懷疑你的能力,一般一會問到這部分內容,比如樹的遍歷、快速排序等。

linux:

一般會問一些命令的使用,然后會舉一個實際的場景,讓你用命令去排查問題,這塊自己不是很熟,需要盡快加強。

隨著java的普及,懂Java的人越來越多,企業(yè)也會對求職者提出更高的要求,他們更希望招聘一些馬上能上手工作的,所以傾向于招聘一些有項目開發(fā)經驗的,這也是為什么那么多的大學計算機專業(yè)畢業(yè)的大學生找不到工作的原因,所以越來越多的大學生才會選擇畢業(yè)前后參加一些專業(yè)的Java培訓班來增加實戰(zhàn)經驗。只有增加自我實力才能出于不敗之地。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部