baibailittlelove
Java面試不光有面試也會有筆試,為了讓java應聘筆試題能順利通過,中公優(yōu)就業(yè)·浙江IT培訓的小U老師整理了一些java筆試題及答案分享給大家,準備或將要參加java面試的朋友可以仔細閱讀,爭取一次通過,進去自己心儀的企業(yè)工作。一、九道選擇題程序的種類有(BCD )A.類(Class) .下列說法正確的有( BCD)A. 環(huán)境變量可在編譯source code時指定B. 在編譯程序時,所能指定的環(huán)境變量不包括class pathC. javac一次可同時編譯數(shù)個Java源文件D. 能指定編譯結果要置于哪個目錄(directory)3.下列標識符不合法的有( ACD) B.$Usdollars .下列說法錯誤的有( BCD)A. 數(shù)組是一種對象B. 數(shù)組屬于一種原生類C. int number=={31,23,33,43,35,63}D. 數(shù)組的大小可以任意改變5.不能用來修飾interface的有(ACD ) .下列正確的有(ACD )A. call by value不會改變實際參數(shù)的數(shù)值B. call by reference能改變實際參數(shù)的參考地址C. call by reference不能改變實際參數(shù)的參考地址D. call by reference能改變實際參數(shù)的內(nèi)容7.下列說法錯誤的有( ACD)A. 在類方法中可用this來調用本類的類方法B. 在類方法中調用本類的類方法時可直接調用C. 在類方法中只能調用本類中的類方法D. 在類方法中絕對不能調用實例方法8.下列說法錯誤的有(ABC )A. Java面向對象語言容許單獨的過程與函數(shù)存在B. Java面向對象語言容許單獨的方法存在C. Java語言中的方法屬于類中的成員(member)D. Java語言中的方法必定隸屬于某一類(對象),調用方法與過程或函數(shù)相同9.下列說法錯誤的有(BCD )A. 能被成功運行的java class文件必須有main方法B. J2SDK就是Java APIC. 可利用jar選項運行.jar文件D. 能被Appletviewer成功運行的java class文件必須有main方法二、六道簡答題1、在java中如果聲明一個類為final,表示什么意思?答:final是最終的意思,final可用于定義變量、方法和類但含義不同,聲明為final的類不能被繼承。2、父類的構造方法是否可以被子類覆蓋(重寫)?答:父類的構造方法不可以被子類覆蓋,因為父類和子類的類名是不可能一樣的。3、請講述String 和StringBuffer的區(qū)別。答:String 類所定義的對象是用于存放“長度固定”的字符串。StringBuffer類所定義的對象是用于存放“長度可變動”的字符串。4、如果有兩個類A、B(注意不是接口),你想同時使用這兩個類的功能,那么你會如何編寫這個C類呢?答:因為類A、B不是接口,所以是不可以直接繼承的,但可以將A、B類定義成父子類,那么C類就能實現(xiàn)A、B類的功能了。假如A為B的父類,B為C的父類,此時C就能實現(xiàn)A、B的功能。5、結合Java視頻Lesson5(多線程),分析sleep()和wait()方法的區(qū)別。答: Sleeping睡眠的意思 : sleep() 方法用來暫時中止執(zhí)行的線程。在睡眠后,線程將進入就緒狀態(tài)。waiting等待的意思: 如果調用了 wait() 方法,線程將處于等待狀態(tài)。用于在兩個或多個線程并發(fā)運行時。6、談談你對抽象類和接口的理解。答:定義抽象類的目的是提供可由其子類共享的一般形式、子類可以根據(jù)自身需要擴展抽象類、抽象類不能實例化、抽象方法沒有函數(shù)體、抽象方法必須在子類中給出具體實現(xiàn)。他使用extends來繼承。接口:一個接口允許一個類從幾個接口繼承而來,Java 程序一次只能繼承一個類但可以實現(xiàn)幾個接口,接口不能有任何具體的方法,接口也可用來定義可由類使用的一組常量。其實現(xiàn)方式是interface來實現(xiàn)。以上就是小U老師整理的2018java筆試題及答案,關于java應聘筆試題還有很多,后期小編會及時整理更新更多java應聘筆試題,準備參加java面試的朋友可以仔細研究題目,做好充分的準備參加每一場面試,祝你成功!
小淘淘0312
Java面向對象1. super()與this()的區(qū)別?This():當前類的對象,super父類對象。Super():在子類訪問父類的成員和行為,必須受類繼承規(guī)則的約束而this他代表當前對象,當然所有的資源都可以訪問.在構造函數(shù)中,如果第一行沒有寫super(),編譯器會自動插入.但是如果父類沒有不帶參數(shù)的構造函數(shù),或這個函數(shù)被私有化了(用private修飾).此時你必須加入對父類的實例化構造.而this就沒有這個要求,因為它本身就進行實例化的構造.而在方法中super和this使用的方法就差不多了.只不過super 要考慮是否能訪問其父類的資源.2. 作用域public,protected,private,以及不寫時的區(qū)別?Public:不同包、 同一包、 類內(nèi)都可用Private: 類內(nèi)Protected:不同包的子類、同一包、 類內(nèi)都可用不寫時: 同一包內(nèi)、類內(nèi)3. 編程輸出如下圖形。* * * * ** * * ** * ** **代碼如下:public class Print { publicstatic void main(String[] args) { for(int i = 0; i < 5; i++) { for(int j = 5; j > i; j--) { ("*"); } (); } }}4. JAVA的事件委托機制和垃圾回收機制Java事件委托機制的概念,一個源產(chǎn)生一個事件并將它送到一個或多個監(jiān)聽器那里。在這種方案中,監(jiān)聽器簡單的等待,直到它收到一個事件。一旦事件被接受,監(jiān)聽器將處理這個事件,然后返回。垃圾回收機制垃圾收集是將分配給對象但不再使用的內(nèi)存回收或釋放的過程。如果一個對象沒有指向它的引用或者其賦值為null,則次對象適合進行垃圾回收5. 在JAVA中,如何跳出當前的多重嵌套循環(huán)?用break; return 方法。6. 什么是java序列化,如何實現(xiàn)java序列化?(寫一個實例)序列化:處理對象流的機制,所謂對象流也就是將對象的內(nèi)容進行流化??梢詫α骰蟮膶ο筮M行讀寫操作,也可將流化后的對象傳輸于網(wǎng)絡之間。序列化是為了解決在對對象流進行讀寫操作時所引發(fā)的問題。序列化的實現(xiàn):將需要被序列化的類實現(xiàn)Serializable接口,該接口沒有需要實現(xiàn)的方法,implementsSerializable只是為了標注該對象是可被序列化的,然后使用一個輸出流(如:FileOutputStream)來構造一個ObjectOutputStream(對象流)對象,接著,使用ObjectOutputStream對象的writeObject(Object obj)方法就可以將參數(shù)為obj的對象寫出(即保存其狀態(tài)),要恢復的話則用輸入流。7. 一個".java"源文件中是否可以包括多個類(不是內(nèi)部類)?有什么限制?可以。如果這個類的修飾符是public,其類名與文件名必須相同。8. 排序都有哪幾種方法?請列舉。用JAVA實現(xiàn)一個快速排序?排序的方法有:插入排序(直接插入排序、希爾排序),交換排序(冒泡排序、快速排序),選擇排序(直接選擇排序、堆排序),歸并排序,分配排序(箱排序、基數(shù)排序)快速排序的偽代碼。9. Overload和Override的區(qū)別。Overloaded的方法是否可以改變返回值的類型?重寫Override,子類覆蓋父類的方法,將子類傳與父類的引用調用的還是子類的方法。重載Overloading 一個類多個方法,名稱相同,參數(shù)個數(shù)類型不同。兩者都是Java多態(tài)性的不同表現(xiàn)。Overloaded的方法是可以改變返回值的類型。1, public class Ctest(){ Public static void main(){(8+8+”88”+8+8);}} 168888(方法的重寫Overriding和重載Overloading是Java多態(tài)性的不同表現(xiàn)。重寫Overriding是父類與子類之間多態(tài)性的一種表現(xiàn),重載Overloading是一個類中多態(tài)性的一種表現(xiàn)。如果在子類中定義某方法與其父類有相同的名稱和參數(shù),我們說該方法被重寫 (Overriding)。子類的對象使用這個方法時,將調用子類中的定義,對它而言,父類中的定義如同被“屏蔽”了。如果在一個類中定義了多個同名的方法,它們或有不同的參數(shù)個數(shù)或有不同的參數(shù)類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類型。)10. Final類有什么特點? 屬性常量 方法不可以overridding 類不可以繼承11. 繼承時候類的執(zhí)行順序問題,一般都是選擇題,問你將會打印出什么?答:父類:package test;public class FatherClass {public FatherClass() {("FatherClassCreate");}}子類:package test;import ;public class ChildClass extends FatherClass{public ChildClass() {("ChildClassCreate");}public static void main(String[] args) {FatherClass fc = new FatherClass();ChildClass cc = new ChildClass();}}輸出結果:C:>java CreateFatherClass CreateChildClass Create12. 內(nèi)部類的實現(xiàn)方式?package test;public class OuterClass {private class InterClass {Public Interlass(){("InterClassCreate");}}public OuterClass(){InterClass ic = new InterClass();("OuterClassCreate");}public static void main(String[] args){OuterClass oc = new OuterClass();}}輸出結果:C:>java test/OuterClass InterClass Create OuterClass Create13. 用JAVA實現(xiàn)一種排序,JAVA類實現(xiàn)序列化的方法(二種)?14. 如在COLLECTION框架中,實現(xiàn)比較要實現(xiàn)什么樣的接口?15. 用插入法進行排序代碼如下package test;import .*;class InsertSort {ArrayList al;public InsertSort(int num,int mod) {al = new ArrayList(num);Random rand = new Random();("The ArrayList SortBefore:");for (int i=0;i
優(yōu)質工程師考試問答知識庫