當前位置:文書都 >

教師之家 >試題 >

java基礎教程試題答案

java基礎教程試題答案

考試之前我們需要好好的刷題,為了方便大家,小編帶來了java基礎教程試題答案。

java基礎教程試題答案

1. 什麼是JVM?

為什麼稱Java為跨平台的編程語言?Java虛擬機(Java Virtual Machine)是可以執行Java字節碼的虛擬機,每個Java源文件將被編譯成字節碼文件,然後在JVM中執行。Java之所以被設計成可以在任意的平台運行,而不需要重寫或者在不同的平台下重新編譯,這些都要歸功於Java虛擬機(JVM),因為JVM非常瞭解特定的指令的長度以及底層硬件平台的特殊性。

java基礎教程試題答案

2. JDK和JRE之間的差異是什麼?

Java運行環境(Java Runtime Enviroment) 是運行Java程序的基本的Java虛擬機,包括執行applet的瀏覽器插件。JDK (Java Development Kit) 是為了開發,編譯和執行Java應用程序,針對Java的全功能的軟件開發包,包含了JRE,編譯器和工具(比如説  JavaDoc 和Java Debugger)。

面向對象編程的幾個特徵及具體的特性?

Java面向對象編程有其非常明顯的特性,比如説封裝,繼承,多態和抽象。

1)封裝,提供的對象隱藏內部特性和行為的一種能力,每個對象提供了一些方法,其他的對象可以訪問並改變其內部數據。在Java中,提供了三種訪問修飾符: 公有的,私有的以及保護的。每個修飾符都設定了不同的訪問權限,這個權限設置不會因為包的不同而有差異,可以通過鏈接訪問博為峯網校的Java面向對象教程查看關於封裝更多的細節和實例。

2)多態,就是針對不同的基礎數據類型呈現相同接口的一種能力,多態類型就是其操作可以適用於不同類型值的一種類型。

3)繼承,提供了一個對象從基類獲取字段和方法的一種能力.繼承提供了代碼的重用性,並且在不更改現有類的情況下,對現有類增加額外的功能。

4)抽象,是從具體的實例中分離想法的過程,根據他們各自的功能而非具體的實現來開發類. Java中支持創建和存在暴露接口的抽象類, 而沒有包括方法的具體實現。抽象方法的宗旨就是將類的行為和具體實現分離開。

4. 在靜態方法裏可以訪問非靜態變量嗎?

Java 中的 static 變量歸相應的類所有,它的值對於類的所有實例都是相同的。static 變量是在 JVM 加載類的時候初始化的。如果代碼試圖訪問非靜態的變量,而且不是通過類的實例去訪問,編譯器會報錯,因為這些非靜態變量還沒有被創建呢,並且它們沒有與實例相關聯。

5. 在Java中什麼是方法的 Override(覆蓋) 和 Overload(重載)?

Java中方法的` overload 發生的條件是,同一個類裏,有兩個或以上的方法名稱完全相同,但參數列表不同。另一方面,方法的 override 是指,子類重定義了父類裏的同一個方法。Override 的方法必須方法名、參數列表和返回類型都完全相同。Override 的方法不會限制原方法的訪問權限。

支持多繼承嗎?

Java不支持多繼承,每個類只允許繼承一個類,但是可以實現多個接口。

7.進程與線程的區別?

進程是一個程序的執行(即正在運行的程序), 然而線程是在進程中獨立的執行序列. 一個進程可以包含很多線程. 線程有時被稱為輕量級的進程.

8. Java中垃圾回收的目的是什麼, 它什麼時候被使用 ?

垃圾回收用於識別和丟棄程序不再需要的對象, 以便回收和複用資源.

9. finalize()什麼時候被調用 ?

它的目的是什麼 ?finallize方法是在釋放該對象內存前由gc(垃圾回收器)調用. 通常建議在這個方法中釋放該對象持有的資源.

10.如果一個對象的引用被設置為null, gc會立即釋放該對象的內存麼?

不會,這個對象將會在下一次gc循環中被回收。

  • 文章版權屬於文章作者所有,轉載請註明 https://wenshudu.com/jiaoshizhijia/shiti/nmydyr.html
專題