程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 10個Java面試題及答案

10個Java面試題及答案

編輯:關於JAVA

10個Java面試題及答案。本站提示廣大學習愛好者:(10個Java面試題及答案)文章只能為提供參考,不一定能成為您想要的結果。以下是10個Java面試題及答案正文


  1. 什麼是JVM? 為什麼稱Java為跨平台的編程言語?
  Java虛擬機(Java Virtual Machine)是可以執行Java字節碼的虛擬機,每個Java源文件將被編譯成字節碼文件,然後在JVM中執行。Java之所以被設計成可以在恣意的平台運轉,而不需求重寫或許在不同的平台下重新編譯,這些都要歸功於Java虛擬機(JVM),由於JVM十分理解特定的指令的長度以及底層硬件平台的特殊性。
  2. JDK和JRE之間的差別是什麼?
  Java運轉環境(Java Runtime Enviroment) 是運轉Java順序的根本的Java虛擬機,包括執行applet的閱讀器插件。JDK (Java Development Kit) 是為了開發,編譯和執行Java使用順序,針對Java的全功用的軟件開發包,包括了JRE,編譯器和工具(比方說 JavaDoc 和Java Debugger)。
  3.Java面向對象編程的幾個特征及詳細的特性?
  Java面向對象編程有其十分分明的特性,比方說封裝,承繼,多態和籠統。
  1)封裝,提供的對象隱藏外部特性和行為的一種才能,每個對象提供了一些辦法,其他的對象可以訪問並改動其外部數據。在Java中,提供了三種訪問修飾符: 私有的,公有的以及維護的。每個修飾符都設定了不同的訪問權限,這個權限設置不會由於包的不同而有差別,可以經過鏈接訪問博為峰網校的Java面向對象教程(http://www.atstudy.com/course/180)檢查關於封裝更多的細節和實例。
  2)多態,就是針對不同的根底數據類型出現相反接口的一種才能,多態類型就是其操作可以適用於不同類型值的一品種型。
  3)承繼,提供了一個對象從基類獲取字段和辦法的一種才能.承繼提供了代碼的重用性,並且在不更改現有類的狀況下,對現有類添加額定的功用。
  4)籠統,是從詳細的實例中別離想法的進程,依據他們各自的功用而非詳細的完成來開發類. Java中支持創立和存在暴露接口的籠統類, 而沒有包括辦法的詳細完成。籠統辦法的主旨就是將類的行為和詳細完成別離開。
  4. 在靜態辦法裡可以訪問非靜態變量嗎?
  Java 中的 static 變量歸相應的類一切,它的值關於類的一切實例都是相反的。static 變量是在 JVM 加載類的時分初始化的。假如代碼試圖訪問非靜態的變量,而且不是經過類的實例去訪問,編譯器會報錯,由於這些非靜態變量還沒有被創立呢,並且它們沒有與實例相關聯。
  5. 在Java中什麼是辦法的 Override(掩蓋) 和 Overload(重載)?
  Java中辦法的 overload 發作的條件是,同一個類裡,有兩個或以上的辦法稱號完全相反,但參數列表不同。另一方面,辦法的 override 是指,子類重定義了父類裡的同一個辦法。Override 的辦法必需辦法名、參數列表和前往類型都完全相反。Override 的辦法不會限制原辦法的訪問權限。
  6.Java支持多承繼嗎?
  Java不支持多承繼,每個類只允許承繼一個類,但是可以完成多個接口。
  7.進程與線程的區別?
  進程是一個順序的執行(即正在運轉的順序), 但是線程是在進程中獨立的執行序列. 一個進程可以包括很多線程. 線程有時被稱為輕量級的進程.
  8. Java中渣滓回收的目的是什麼, 它什麼時分被運用 ?
  渣滓回收用於辨認和丟棄順序不再需求的對象, 以便回收和復用資源.
  9. finalize()什麼時分被調用 ? 它的目的是什麼 ?
  finallize辦法是在釋放該對象內存前由gc(渣滓回收器)調用. 通常建議在這個辦法中釋放該對象持有的資源.
  10.假如一個對象的援用被設置為null, gc會立刻釋放該對象的內存麼?
  不會,這個對象將會在下一次gc循環中被回收。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved