雖然Java開發(fā)崗位的需求比較大,薪資待遇在IT行業(yè)中也是比較高的,但是并不是每個人都能夠找到適合自己的工作,即使你的技術比較高的,很多人就是因為不會面試無法展示出自己的真實水平,從而很難找到比較高薪資的工作,所以今天就給大家?guī)?strong>java面試寶典(總結大全)助你找到好工作。
1.解釋面向對象和面向過程
Java開發(fā)面向過程優(yōu)點是性能比面向對象高,因為類調用時需要實例化,開銷比較大,比較消耗資源;比如單片機、嵌入式開發(fā)、Linux/Unix等一般采用面向過程開發(fā),性能是重要的因素。缺點就是沒有面向對象易維護、易復用、易擴展。 面向對象的優(yōu)點是易維護、易復用、易擴展,由于面向對象有封裝、繼承、多態(tài)性的特性,可以設計出低耦合的系統(tǒng),使系統(tǒng)更加靈活、更加易于維護;缺點就是性能比面向過程低。
2.Object的公用方法
方法equals測試的是兩個對象是否相等;方法clone進行對象拷貝;方法getClass返回和當前對象相關的Class對象;方法notify,notifyall,wait都是用來對給定對象進行線程同步的。
3.Hashcode的作用
同樣用于鑒定2個對象是否相等的,Java集合中有 list 和 set 兩類,其中 set不允許元素重復實現(xiàn),那個這個不允許重復實現(xiàn)的方法,如果用 equal 去比較的話,如果存在1000個元素,你 new 一個新的元素出來,需要去調用1000次 equal 去逐個和他們比較是否是同一個對象,這樣會大大降低效率。hashcode實際上是返回對象的存儲地址,如果這個位置上沒有元素,就把元素直接存儲在上面,如果這個位置上已經存在元素,這個時候才去調用equal方法與新元素進行比較,相同的話就不存了,散列到其他地址上。
4.Java開發(fā)采用何種編碼方案
Java語言采用Unicode編碼標準,Unicode(標準碼),它為每個字符制訂了一個唯一的數(shù)值,因此在任何的語言,平臺,程序都可以放心的使用。構造器Constructor是否可被override。 在講繼承的時候我們就知道父類的私有屬性和構造方法并不能被繼承,所以Constructor也就不能被override,但是可以overload,所以你可以看到一個類中有多個構造函數(shù)的情況。重載發(fā)生在同一個類中,方法名必須相同,參數(shù)類型不同、個數(shù)不同、順序不同,方法返回值和訪問修飾符可以不同,發(fā)生在編譯時。重寫發(fā)生在父子類中,方法名、參數(shù)列表必須相同,返回值小于等于父類,拋出的異常小于等于父類,訪問修飾符大于等于父類;如果父類方法訪問修飾符為private則子類中就不是重寫。
以上就是對于Java面試寶典的介紹,以上就是多數(shù)人在參加Java面試過程中會遇到的問題,當然除了以上的問題還會遇到更多其他的提問,如果你想系統(tǒng)的學習可以選擇參加南京北大青鳥的Java培訓課程,我們有著系統(tǒng)的教學方案,從基礎知識的學習到實戰(zhàn)項目的練習,以及面試技巧的教授都是非常專業(yè)的,這樣才能夠在面試中有更多的優(yōu)勢。