java實習面試
⑴ 應屆生面試java相關崗位可能會被問到哪些技術問題
常見的Java問題
1.什麼是Java虛擬機?為什麼Java被稱作是「平台無關的編程語言」?
Java虛擬機是一個可以執行Java位元組碼的虛擬機進程。Java源文件被編譯成能被Java虛擬機執行的位元組碼文件。
Java被設計成允許應用程序可以運行在任意的平台,而不需要程序員為每一個平台單獨重寫或者是重新編譯。Java虛擬機讓這個變為可能,因為它知道底層硬體平台的指令長度和其他特性。
2.JDK和JRE的區別是什麼?
Java運行時環境(JRE)是將要執行Java程序的Java虛擬機。它同時也包含了執行applet需要的瀏覽器插件。Java開發工具包(JDK)是完整的Java軟體開發包,包含了JRE,編譯器和其他的工具(比如:JavaDoc,Java調試器),可以讓開發者開發、編譯、執行Java應用程序。
3.」static」關鍵字是什麼意思?Java中是否可以覆蓋(override)一個private或者是static的方法?
「static」關鍵字表明一個成員變數或者是成員方法可以在沒有所屬的類的實例變數的情況下被訪問。
Java中static方法不能被覆蓋,因為方法覆蓋是基於運行時動態綁定的,而static方法是編譯時靜態綁定的。static方法跟類的任何實例都不相關,所以概念上不適用。
4.是否可以在static環境中訪問非static變數?
static變數在Java中是屬於類的,它在所有的實例中的值是一樣的。當類被Java虛擬機載入的時候,會對static變數進行初始化。如果你的代碼嘗試不用實例來訪問非static的變數,編譯器會報錯,因為這些變數還沒有被創建出來,還沒有跟任何實例關聯上。
5.Java支持的數據類型有哪些?什麼是自動拆裝箱?
Java語言支持的8中基本數據類型是:
byte
short
int
long
float
double
boolean
char
介面中所有的方法隱含的都是抽象的。而抽象類則可以同時包含抽象和非抽象的方法。
類可以實現很多個介面,但是只能繼承一個抽象類
類如果要實現一個介面,它必須要實現介面聲明的所有方法。但是,類可以不實現抽象類聲明的所有方法,當然,在這種情況下,類也必須得聲明成是抽象的。
抽象類可以在不提供介面方法實現的情況下實現介面。
Java介面中聲明的變數默認都是final的。抽象類可以包含非final的變數。
Java介面中的成員函數默認是public的。抽象類的成員函數可以是private,protected或者是public。
介面是絕對抽象的,不可以被實例化。抽象類也不可以被實例化,但是,如果它包含main方法的話是可以被調用的。
自動裝箱是Java編譯器在基本數據類型和對應的對象包裝類型之間做的一個轉化。比如:把int轉化成Integer,double轉化成double,等等。反之就是自動拆箱。
6.Java中的方法覆蓋(Overriding)和方法重載(Overloading)是什麼意思?
Java中的方法重載發生在同一個類裡面兩個或者是多個方法的方法名相同但是參數不同的情況。與此相對,方法覆蓋是說子類重新定義了父類的方法。方法覆蓋必須有相同的方法名,參數列表和返回類型。覆蓋者可能不會限制它所覆蓋的方法的訪問。
7.Java中,什麼是構造函數?什麼是構造函數重載?什麼是復制構造函數?
當新對象被創建的時候,構造函數會被調用。每一個類都有構造函數。在程序員沒有給類提供構造函數的情況下,Java編譯器會為這個類創建一個默認的構造函數。
Java中構造函數重載和方法重載很相似。可以為一個類創建多個構造函數。每一個構造函數必須有它自己唯一的參數列表。
Java不支持像C++中那樣的復制構造函數,這個不同點是因為如果你不自己寫構造函數的情況下,Java不會創建默認的復制構造函數。
8.Java支持多繼承么?
不支持,Java不支持多繼承。每個類都只能繼承一個類,但是可以實現多個介面。
9.介面和抽象類的區別是什麼?
Java提供和支持創建抽象類和介面。它們的實現有共同點,不同點在於:
也可以參考JDK8中抽象類和介面的區別
10.什麼是值傳遞和引用傳遞?
對象被值傳遞,意味著傳遞了對象的一個副本。因此,就算是改變了對象副本,也不會影響源對象的值。
對象被引用傳遞,意味著傳遞的並不是實際的對象,而是對象的引用。因此,外部對引用對象所做的改變會反映到所有的對象上。
Java線程
⑵ 求java面試自我介紹
下面是java面試自我介紹。
⑶ java課程分享程序員面試應該如何發揮自己的優勢
相信大家在參加一些企業面試的時候應該發現了,有時候我們會遇到一些不容易回答的問題,下面我們就一起來了解一下在遇到這些情況之下我們應該怎麼辦。
1、坦誠相對,說明你的擅長點,讓面試官給次機會
我遇到過個別候選人,他技術點知道一點,並非什麼都不知道,屬於可上可下的。比如項目是要SSM框架,但他在這方面只有學習經驗,沒商用項目經驗,但他JDK,資料庫可以,他就直說,SSM不行,但亮出他的長處,比如舉例說明他學習能力很強,或者很能吃苦,溝通能力可以,然後表達出強烈想入職的願望,我一般都會給出「技術可以(或技術勉強可以),能參加後繼面試」的評語。
大家在面試的時候,回答問題好壞自己能估計出來,如果太差,屬於一問三不知的,即使說這種話也沒用,但如果你感覺回答的時候並非一無是處,就可以找機會說出這種話。
2、通過展示你以前的亮點,讓面試官相信你的潛力和能力
如果你屬於工作經驗少於3年的,面試官其實對你不會要求太苛刻,其實更會關心你的學習能力,工作責任心,承受壓力的情況,責任心,穩定性,剛才提到的補救措施你一定要有證據說明,你得用事實講話,畢竟空口無憑。
下面java課程http://www.kmbdqn.com/舉出一些我面試過程中聽到的別人說出的一些亮點,大家可以舉一反三靈活掌握。
1我雖然對您剛才說到的SSM技術了解不深入(事實上他是還是會在項目經理搭建好框架的基礎上開發,還能知道一點,如果一點也不知道,說了也沒用),但我對MVC框架了解過,我以前做過的項目是用Jsp+Servlet3.0+JDBC實現的,也單獨用過Spring的框架,所以我很快能上手。(我會適當問他JSP+servlet+JDBC里MVC的流程,如果他能說上來,我就會在評語上寫「了解基本的SSM,了解MVC框架,知道MVC的開發方式」,但如果他不額外說明,或許我就會寫,「只會在項目經理搭建好的基礎上了解SSM,不了解框架細節」,這樣即使他通過我的技術面試,後繼的項目經理看到評語也不會對他有太多的好感)
⑷ java應屆生面試問題
首先要有足夠的自信。能夠把你所學的知識發揮出來。
其次,技術的復習要到位,面試之前最好把Java的知識點過一遍。比如JavaSE基礎,資料庫原理,Web技術要點(Servlet/JSP),三大框架的概念和三大框架如何整合的。最後能夠說出一到兩個你做過的項目,把項目的模塊描述清楚,自己在項目的負責模塊和分工解釋好,還有遇到的問題如何解決等等之類的問題。
還有,在面試中要保持自信和謙虛,讓面試公司感覺到你有實力,但又不驕傲。畢竟公司都喜歡踏實的人。
⑸ 一般java面試都會問些什麼問題
1、請你自我介紹一下你自己?
回答提示:一般人回答這個問題過於平常,只說姓名、年齡、愛好、工作經驗,這些在簡歷上都有。其實,企業最希望知道的是求職者能否勝任工作,包括:最強的技能、最深入研究的知識領域、個性中最積極的部分、做過的最成功的事,主要的成就等,這些都可以和學習無關,也可以和學習有關,但要突出積極的個性和做事的能力,說得合情合理企業才會相信。
企業很重視一個人的禮貌,求職者要尊重考官,在回答每個問題之後都說一句「謝謝」,企業喜歡有禮貌的求職者。
2、你覺得你個性上最大的優點是什麼?
回答提示:沉著冷靜、條理清楚、立場堅定、頑強向上、樂於助人和關心他人、適應能力和幽默感、樂觀和友愛。我在北大青鳥經過爛枝纖一到兩年的培訓及項目實戰,加上實習工作,使我適合這份工作。
3、說說你最大的缺點?
回答提示:這個問題企業問的概率很大,通常不希望聽到直接回答的缺點是什麼等,如果求職者說自己小心眼、愛忌妒人、非常懶、脾氣大、工作效率低,企業肯定不會錄用你。絕對不要自作聰明地回答「我最大的缺點是過於追求完美」,有的人以為這樣回答會顯得自飢仿己比較出色,但事實上,他已經岌岌可危了。
企業喜歡求職者從自己的優點說起,中間加一些小缺點,最後再把問題轉回到優點上,突出優點的部分,企業喜歡聰明的求職者。
4、你對加班的看法?
回答提示:實際上好多公司問這個問題,並不證明一定要加班,只是想測試你是否願意為公司奉獻。
回答樣本:如果是工作需要我會義不容辭加班,我現在單身,沒有任何家庭負擔,可以全身心的投入工作。但同時,我也會提高工作效率,減少不搭運必要的加班。
5、你對薪資的要求?
回答提示:如果你對薪酬的要求太低,那顯然貶低自己的能力;如果你對薪酬的要求太高,那又會顯得你分量過重,公司受用不起。
一些僱主通常都事先對求聘的職位定下開支預算,因而他們第一次提出的價錢往往是他們所能給予的最高價錢,他們問你只不過想證實一下這筆錢是否足以引起你對該工作的興趣。