亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java熱門筆試試題整理

 更新時間:2017年11月29日 11:58:54   投稿:laozhang  
給大家整理了現在很熱門的java程序員面試時候的筆試試題以及答案,希望能幫助到你。

小編為面試Java程序員的朋友們整理了2017非常熱門的面試中的筆試試題,如果你是一個正在準備面試Java程序員的讀者,趕快學習一下吧。

1,下列說法正確的是()

A.一個文件里可以同時存在兩個public修飾的類

B.構造函數可以被重寫(override)

C.子類不能訪問父類非public和protected修飾的屬性

D.final修飾的類可以被繼承

答案:C

一個Java源文件中最多只能有一個public類,當有一個public類時,源文件名必須與之一致,否則無法編譯,如果源文件中沒有一個public類,則文件名與類中沒有一致性要求。至于main()不是必須要放在public類中才能運行程序。

重寫是子類繼承父類后對父類的方法進行修改。方法名,參數,返回值必須一樣。 不能重寫被標示為final的方法。如果不能繼承一個方法,則不能重寫這個方法。

擴展:重寫override,重載overload的區(qū)別

java的方法重載

就是在類中可以創(chuàng)建多個方法,它們具有相同的名字,但具有不同的參數和不同的定義。調用方法時通過傳遞給它們的不同參數個數和參數類型來決定具體使用哪個方法,而且返回值類型可以相同也可以不相同,這也是面向對象的多態(tài)性。

java的方法重寫

父類與子類之間的多態(tài)性,對父類的函數進行重新定義。如果在子類中定義某方法與其父類有相同的名稱和參數,我們說該方法被重寫 (Overriding)。在Java中,子類可繼承父類中的方法,而不需要重新編寫相同的方法。但有時子類并不想原封不動地繼承父類的方法,而是想作一定的修改,這就需要采用方法的重寫。方法重寫又稱方法覆蓋。

若子類中的方法與父類中的某一方法具有相同的方法名、返回類型和參數表,則新方法將覆蓋原有的方法。如需父類中原有的方法,可使用super關鍵字,該關鍵字引用了當前類的父類。

子類函數的訪問修飾權限不能少于父類的;

重寫方法只能存在于具有繼承關系中,重寫方法只能重寫父類非私有的方法。

2,for(int x=0,y=0;(y!=0)&&(x<4);x++)循環(huán)的執(zhí)行次數是()

A.無限次

B.執(zhí)行4次

C.執(zhí)行3次

D.一次也不執(zhí)行

答案:D

y初始值為0,在整個for循環(huán)中,y的值不變,故判斷語句中的(y!=0)不成立,故一次也不執(zhí)行。

3,關于 JAVA 堆,下面說法錯誤的是( )

A.所有類的實例和數組都是在堆上分配內存的

B.對象所占的堆內存是由自動內存管理系統(tǒng)回收

C.堆內存由存活和死亡的對象,空閑碎片區(qū)組成

D.數組是分配在棧中的

答案:D

首先數組是分配在堆中的,故D的說法不正確。

Java堆的結構:JVM的堆是運行時數據區(qū),所有類的實例和數組都是在堆上分配內存。它在JVM啟動的時候被創(chuàng)建。對象所占的堆內存是由自動內存管理系統(tǒng)也就是垃圾收集器回收。堆內存是由存活和死亡的對象組成的。存活的對象是應用可以訪問的,不會被垃圾回收。死亡的對象是應用不可訪問尚且還沒有被垃圾收集器回收掉的對象。一直到垃圾收集器把這些對象回收掉之前,他們會一直占據堆內存空間。

4,在使用super 和this關鍵字時,以下描述正確的是()

A.在子類構造方法中使用super()顯示調用父類的構造方法;

super()必須寫在子類構造方法的第一行,否則編譯不通過

B.super()和this()不一定要放在構造方法內第一行

C.this()和super()可以同時出現在一個構造函數中

D.this()和super()可以在static環(huán)境中使用,包括static方法和static語句塊

答案:A

Java關鍵字this只能用于方法方法體內。當一個對象創(chuàng)建后,Java虛擬機(JVM)就會給這個對象分配一個引用自身的指針,這個指針的名字就是this。因此,this只能在類中的非靜態(tài)方法中使用,靜態(tài)方法和靜態(tài)的代碼塊中絕對不能出現this。

super關鍵和this作用類似,是被屏蔽的成員變量或者成員方法或變?yōu)榭梢?,或者說用來引用被屏蔽的成員變量和成員成員方法。

不過super是用在子類中,目的是訪問直接父類中被屏蔽的成員,注意是直接父類(就是類之上最近的超類)

5,下列語句哪一個正確()

A.Java程序經編譯后會產生machine code

B.Java程序經編譯后會產生byte code

C.Java程序經編譯后會產生DLL

D.以上都不正確

答案:B

Java字節(jié)碼是Java源文件編譯產生的中間文件

java虛擬機是可運行java字節(jié)碼的假想計算機 java的跨平臺性也是相對與其他編程語言而言的 。

先介紹一下c語言的編譯過程:c的文件經過C編譯程序編譯后生成windows可執(zhí)行文件exe文件然后在windows中執(zhí)行。

再介紹java的編譯過程:java的文件由java編譯程序將java字節(jié)碼文件就是class文件在java虛擬機中執(zhí)行。機器碼是由CPU來執(zhí)行的;Java編譯后是字節(jié)碼。

電腦只能運行機器碼。Java在運行的時候把字節(jié)碼變成機器碼。C/C++在編譯的時候直接編譯成機器碼

6,下列哪一種敘述是正確的()

A.abstract修飾符可修飾字段、方法和類

B.抽象方法的body部分必須用一對大括號{ }包住

C.聲明抽象方法,大括號可有可無

D.聲明抽象方法不可寫出大括號

答案:D

abstract修飾符用來修飾類和成員方法

用abstract修飾的類表示抽象類,抽象類位于繼承樹的抽象層,抽象類不能被實例化。

用abstract修飾的方法表示抽象方法,抽象方法沒有方法體。抽象方法用來描述系統(tǒng)具有什么功能,但不提供具體的實現。

Abstract是Java中的一個重要關鍵字,可以用來修飾一個類或者一個方法。

修飾一個方法時,表示該方法只有特征簽名(signature),沒有具體實現,而是把具體實現留給繼承該類的子類,所以不能有大括號。

7,下列說法正確的有()

A.class中的constructor不可省略

B.constructor必須與class同名,但方法不能與class同名

C.constructor在一個對象被new時執(zhí)行

D.一個class只能定義一個constructor

答案:C

這里可能會有誤區(qū),其實普通的類方法是可以和類名同名的,和構造方法唯一的區(qū)分就是,構造方法沒有返回值。

8,GC線程是否為守護線程()

答案:是

線程分為守護線程和非守護線程(即用戶線程)。

只要當前JVM實例中尚存在任何一個非守護線程沒有結束,守護線程就全部工作;只有當最后一個非守護線程結束時,守護線程隨著JVM一同結束工作。

守護線程最典型的應用就是 GC (垃圾回收器)

9,關于sleep()和wait(),以下描述錯誤的一項是( )

A. sleep是線程類(Thread)的方法,wait是Object類的方法;

B. sleep不釋放對象鎖,wait放棄對象鎖;

C. sleep暫停線程、但監(jiān)控狀態(tài)仍然保持,結束后會自動恢復;

D. wait后進入等待鎖定池,只有針對此對象發(fā)出notify方法后獲得對象鎖進入運行狀態(tài)。

答案:D

sleep是線程類(Thread)的方法,導致此線程暫停執(zhí)行指定時間,給執(zhí)行機會給其他線程,但是監(jiān)控狀態(tài)依然保持,到時后會自動恢復。調用sleep不會釋放對象鎖。

wait是Object類的方法,對此對象調用wait方法導致本線程放棄對象鎖,進入等待此對象的等待鎖定池,只有針對此對象發(fā)出notify方法(或notifyAll)后本線程才進入對象鎖定池準備獲得對象鎖進入運行狀態(tài)。

10,方法resume()負責恢復哪些線程的執(zhí)行( )

A,通過調用stop()方法而停止的線程。

B,通過調用sleep()方法而停止的線程。

C,通過調用wait()方法而停止的線程。

D,通過調用suspend()方法而停止的線程。

答案:D

suspend可以掛起一個線程,就是把這個線程暫停了,它占著資源,但不運行,用resume是恢復掛起的線程,讓這個線程繼續(xù)執(zhí)行下去。

相關文章

  • Spring Security其它權限校驗方式&自定義權限校驗方式

    Spring Security其它權限校驗方式&自定義權限校驗方式

    這篇文章主要介紹了Spring Security其它權限校驗方式&自定義權限校驗方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 使用Spring Batch實現批處理任務的詳細教程

    使用Spring Batch實現批處理任務的詳細教程

    在企業(yè)級應用中,批處理任務是不可或缺的一部分,它們通常用于處理大量數據,如數據遷移、數據清洗、生成報告等,Spring Batch是Spring框架的一部分,本文將介紹如何使用Spring Batch與SpringBoot結合,構建和管理批處理任務,需要的朋友可以參考下
    2024-06-06
  • 深入理解Java設計模式之狀態(tài)模式

    深入理解Java設計模式之狀態(tài)模式

    這篇文章主要介紹了JAVA設計模式之職責鏈模式的的相關資料,文中示例代碼非常詳細,供大家參考和學習,感興趣的朋友可以了解
    2021-11-11
  • Java環(huán)境配置原理全面解析

    Java環(huán)境配置原理全面解析

    下面小編就為大家?guī)硪黄狫ava環(huán)境配置原理全面解析。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • Java實現md5和base64加密解密的示例代碼

    Java實現md5和base64加密解密的示例代碼

    這篇文章主要介紹了Java實現md5和base64加密解密的示例代碼,幫助大家更好的利用Java加密解密文件,感興趣的朋友可以了解下
    2020-09-09
  • 深入分析java文件路徑的詳解

    深入分析java文件路徑的詳解

    本篇文章是對java文件路徑進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • Java concurrency集合之ConcurrentSkipListSet_動力節(jié)點Java學院整理

    Java concurrency集合之ConcurrentSkipListSet_動力節(jié)點Java學院整理

    這篇文章主要為大家詳細介紹了Java concurrency集合之ConcurrentSkipListSet的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Java DOM4J方式生成XML的方法

    Java DOM4J方式生成XML的方法

    今天小編就為大家分享一篇Java DOM4J方式生成XML的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • 詳解 Java HashMap 實現原理

    詳解 Java HashMap 實現原理

    這篇文章主要介紹了詳解 Java HashMap 實現原理的相關資料,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下
    2021-03-03
  • 解讀Spring-boot的debug調試

    解讀Spring-boot的debug調試

    這篇文章主要介紹了解讀Spring-boot的debug調試,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12

最新評論