Java面試 | 002

本博客 貓叔的博客,轉載請申明出處

前言

本系列爲貓叔綜合整理的Java面試題系列,若有雷同不勝榮幸。java

Java與C/C++的差別?

  • 一、java爲解釋性語言、而C/C++爲編譯型語言。
  • 二、java爲面嚮對象語言,C++則兼具面向過程和麪向過程編程的特色。
  • 三、就垃圾回收而言,C++中有析構函數,而Java則是finalize()方法。
  • 四、Java提供了JDBC、分佈式對象的RMI等庫。

爲何須要public static void main(String[] args)這個方法

  • 一、public權限修飾符,任何類、對象都可訪問;
  • 二、static標記爲靜態方法,存儲在靜態存儲區;
  • 三、main是JVM識別的特殊方法名;
  • 四、args爲開發人員在命令行狀態下雨程序交互提供的手段。
  • 五、即使如此,main函數也不是最早執行的方法!!!

如何在main函數以前輸出「HELLO WORLD!」

因爲靜態塊在類被加載時就會被調用,所以能夠在main()方法執行前,利用靜態塊實現輸出「HELLO WORLD」的功能。git

Java程序初始化的順序是怎麼樣的?

  • 一、靜態對象(變量)優先於非靜態對象(變量)的初始化,其中,靜態對象只初始化一次,而非靜態變量能夠初始化屢次;
  • 二、父類優先於子類進行初始化;
  • 三、按照成員變量的定義順序進行初始化

Java做用域

做用域與可見性 當前類 同一package 子類 其餘package
public YES YES YES YES
private YES NO NO NO
protected YES YES YES NO
default YES YES NO NO

一個java文件能否定義多個類

能夠定義多個類,可是最多隻能有一個類被public修飾,而且這個類的類名與文件名相同。github

公衆號:Java貓說

現架構設計(碼農)兼創業技術顧問,不羈平庸,熱愛開源,雜談程序人生與不按期乾貨。

Image Text

相關文章
相關標籤/搜索