天才教育網(wǎng)合作機(jī)構(gòu) > 編程語(yǔ)言培訓(xùn)機(jī)構(gòu) > java培訓(xùn)機(jī)構(gòu) >

全國(guó)千鋒IT培訓(xùn)

歡迎您!
朋友圈

400-850-8622

全國(guó)統(tǒng)一學(xué)習(xí)專線 9:00-21:00

位置:編程語(yǔ)言培訓(xùn)資訊 > java培訓(xùn)資訊 > 上海java程序*怎么樣,美團(tuán)社招(上海)Java開(kāi)發(fā)面經(jīng)

上海java程序*怎么樣,美團(tuán)社招(上海)Java開(kāi)發(fā)面經(jīng)

日期:2023-07-12 10:31:12     瀏覽:662    來(lái)源:全國(guó)千鋒IT培訓(xùn)
核心提示:想了解上海java程序*怎么樣嗎?想了解美團(tuán)社招(上海)Java開(kāi)發(fā)面經(jīng)?? 嗎?......本文帶你一探究竟。1.美團(tuán)社招(上海)Java開(kāi)發(fā)面經(jīng)先搞個(gè)前提,各位同學(xué)可以根據(jù)自身情況僅做參考,本人非計(jì)算機(jī)專業(yè),學(xué)歷一般吧,工

想了解上海java程序怎么樣嗎?想了解美團(tuán)社招(上海)Java開(kāi)發(fā)面經(jīng)?? 嗎?......本文帶你一探究竟。

1.美團(tuán)社招(上海)Java開(kāi)發(fā)面經(jīng)

先搞個(gè)前提,各位同學(xué)可以根據(jù)自身情況僅做參考,本人非計(jì)算機(jī)專業(yè),學(xué)歷一般吧,工作目前兩年左右。招聘的崗位描述:Java開(kāi)發(fā)工程師,但可能需要學(xué)習(xí)Go語(yǔ)言,非業(yè)務(wù)開(kāi)發(fā)*地點(diǎn):上海市長(zhǎng)寧區(qū)北新涇地鐵站附近吧,一年之后極有可能搬到楊浦區(qū)技術(shù)一面 項(xiàng)目相關(guān)的一些問(wèn)題,主要是闡述了下項(xiàng)目是什么業(yè)務(wù)場(chǎng)景,解決什么問(wèn)題,在進(jìn)行項(xiàng)目描述過(guò)程匯總面試官比較關(guān)注的貌似是并發(fā)量和業(yè)務(wù)總量 因?yàn)槲以陧?xiàng)目中使用了很多的ES作為持久層,所以面試官就針對(duì)我熟悉的中間件進(jìn)行了提問(wèn)ES在寫入時(shí)它是怎么完成一次寫入操作的? 此處我給出了兩種層面的回答在架構(gòu)層面:由于ES分為了master、client、data、ingest四種角色,每次寫入和讀取的HTTP請(qǐng)求都會(huì)先落到client角色的節(jié)點(diǎn)上,然后再負(fù)載到各個(gè)data節(jié)點(diǎn)上,完成寫入和讀取的操作后又將響應(yīng)給應(yīng)用程序。其中需要注意的是data節(jié)點(diǎn)在進(jìn)行查詢時(shí),是由多個(gè)分片進(jìn)行查詢后,在內(nèi)存中拼接而成的,所系查詢時(shí)也需要很大的內(nèi)存, 持久化操作層面: 這層面的話就只是在寫入操作上進(jìn)行了藐視,首先是數(shù)據(jù)請(qǐng)求到達(dá)了data節(jié)點(diǎn)進(jìn)行存儲(chǔ),存儲(chǔ)時(shí)刷盤存在了兩種方式,buffer刷入磁盤和translog進(jìn)行存儲(chǔ) ES集群寫入是怎么優(yōu)化的 關(guān)于HashMap源碼方面的理解,主要是存儲(chǔ)運(yùn)算過(guò)程 HashMap的容量為什么是2的n次方冪HashMap線程不安全會(huì)有哪些影響HashMap的resize過(guò)程是怎么樣的對(duì)于其他集合框架的了解關(guān)于這個(gè)HashMap,我之前有專門研究過(guò)兩天源碼,筆記放著同學(xué)們自行拿取HashMap源碼學(xué)習(xí)筆記JVM堆內(nèi)存模型相關(guān)問(wèn)題 新建對(duì)象內(nèi)存分配過(guò)程(沒(méi)太答上來(lái)) 這里應(yīng)該會(huì)涉及到指針碰撞、空閑列表、并發(fā)安全(CAS機(jī)制和分配緩沖) 堆內(nèi)存中的GC分類,我在回答時(shí)分為了youngGC和FullGC 出現(xiàn)GC時(shí)什么情況下會(huì)有阻塞用戶線程的情況 GC算法進(jìn)行標(biāo)記的時(shí)候,可達(dá)性分析算法中,根可達(dá)算法(GC Roots)有哪些根 作為 GC Roots 的對(duì)象包括下面幾種: 虛擬機(jī)棧(棧幀中的本地變量表)中引用的對(duì)象;各個(gè)線程調(diào)用方法堆棧中使用到的參數(shù)、局部變量、臨時(shí)變量等。 方法區(qū)中類靜態(tài)屬性引用的對(duì)象;java 類的引用類型靜態(tài)變量。 方法區(qū)中常量引用的對(duì)象;比如:字符串常量池里的引用。 本地方法棧中 JNI(即一般說(shuō)的 Native 方法)引用的對(duì)象。 JVM 的內(nèi)部引用(class 對(duì)象、異常對(duì)象 、,系統(tǒng)類加載器)。(非重點(diǎn)) 所有被同步鎖( 關(guān)鍵)持有的對(duì)象。(非重點(diǎn)) JVM 內(nèi)部的 JMXBean、JVMTI 中注冊(cè)的回調(diào)、本地代碼緩存等(非重點(diǎn)) JVM 實(shí)現(xiàn)中的“臨時(shí)性”對(duì)象,跨代引用的對(duì)象 Spring框架是如何解決循環(huán)依賴的問(wèn)題 SpringMVC框架中Filter和有什么區(qū)別,平時(shí)會(huì)怎么使用它們 的實(shí)現(xiàn)原理,為什么能保證線程安全 設(shè)計(jì)模式,手寫一個(gè)靜態(tài)工廠模式 之前另一個(gè)面試手寫過(guò)三種單例模式,這些設(shè)計(jì)模式考的都還挺簡(jiǎn)單的,目前我自己掌握的有 三種創(chuàng)建模式: 單例、工廠、原形 四種行為模式: 模板、策略、監(jiān)聽(tīng)(寫的不多,要百度才能手寫出來(lái))、責(zé)任鏈 一個(gè)業(yè)務(wù)場(chǎng)景的算法選擇,字典樹算法給出的業(yè)務(wù)場(chǎng)景:目前有一堆單詞,給定開(kāi)頭的前綴,如ab找出這對(duì)單詞中以ab開(kāi)頭的單詞。這個(gè)沒(méi)有手寫,但是之前在業(yè)務(wù)上自己用過(guò),放這里方便大家參考public static void initTrie(Set ) { words = new HashMap(.size()); Map temp; Map temp2; //遍歷傳入的敏感詞集合,構(gòu)建字典樹 for (String word : ) { temp = words; //將每個(gè)詞轉(zhuǎn)為字符數(shù)組,每個(gè)字符都是一個(gè)狀態(tài),構(gòu)建有限狀態(tài)集合 for (char character : word.()) { //先查看字典樹內(nèi)是否存在這個(gè)狀態(tài) Object var1 = temp.get(character); if (var1 != null) { //如果存在,則指向下一個(gè)節(jié)點(diǎn) temp = (Map) var1; } else { //如果不存在則進(jìn)行創(chuàng)建節(jié)點(diǎn) temp2 = new HashMap(); temp2.put("isEnd", "0"); //放置該字符,并標(biāo)記其狀態(tài) temp.put(character, temp2); //指向下一個(gè)節(jié)點(diǎn) temp = temp2; } if (word.charAt(word.length() - 1) == character) { temp.put("isEnd", "1"); } } } System.out.println(words); } public static boolean contains(String text, int matchType) { int i = 0; while (i == text.length() - 1) { text.substring(i); } return false; } public static void main(String[] args) { initTrie(new HashSet<>(Arrays.asList("搓搓手", "扣扣腳", "深深懶腰"))); System.out.println(contains("搓手",1)); } 反問(wèn)環(huán)節(jié)Q:團(tuán)隊(duì)代碼規(guī)范是否嚴(yán)苛,是否有注釋A:代碼注釋可能不會(huì)特別多,但是對(duì)于變量的命名有絕對(duì)的標(biāo)準(zhǔn),代碼倉(cāng)庫(kù)也是自研,如果代碼不是太規(guī)范標(biāo)準(zhǔn)的話,將不能編譯Q:招人團(tuán)隊(duì)屬于哪個(gè)業(yè)務(wù)線,如果一起奮斗的話,會(huì)在哪個(gè)模塊A:主要是負(fù)責(zé)公司自研的代碼倉(cāng)庫(kù),只有部分命令傳輸模塊使用的是開(kāi)源組件,其他均為公司自研,非業(yè)務(wù)方面,并且能夠看到公司所有的代碼Marcus Hold CodingA:主要是負(fù)責(zé)公司自研的代碼倉(cāng)庫(kù),只有部分命令傳輸模塊使用的是開(kāi)源組件,其他均為公司自研,非業(yè)務(wù)方面,并且能夠看到公司所有的代碼

上述文章了解到關(guān)于美團(tuán)社招(上海)Java開(kāi)發(fā)面經(jīng)?? ,讓我們對(duì)上海java程序怎么樣 有一個(gè)直觀的認(rèn)知。我們發(fā)現(xiàn),作為一個(gè)優(yōu)秀的Java程序員是多么的自豪。

本文由 全國(guó)千鋒IT培訓(xùn) 整理發(fā)布。更多培訓(xùn)課程,學(xué)習(xí)資訊,課程優(yōu)惠,課程開(kāi)班,學(xué)校地址等學(xué)校信息,可以留下你的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢電話:400-850-8622

如果本頁(yè)不是您要找的課程,您也可以百度查找一下: