首頁>科技>

“Java技術能力自以為還不錯,但是到了面試的時候就涼涼。”

“對面試官提出的問題感覺很懵,不知道面試官要問啥。”

“有的面試官,一坐下就從基礎的知識開始狂問。”

對於小夥伴們來說,面試是我們誰都逃避不了的事情。而對於Java基礎知識的熟練掌握,也是很多大公司非常重視的能力。

今天大雄給小夥伴們帶來的就是關於Java的一些基礎知識,但這些知識在面試中出現的頻率也是非常高的。

Java 語言的風格很像 C 語言和 C++ 語言,是一種純粹的面嚮物件語言,它繼承了 C++ 語言面嚮物件的技術核心,但是拋棄了 C++ 的一些缺點。

比如說容易引起錯誤的指標以及多繼承等,同時也增加了垃圾回收機制,釋放掉不被使用的記憶體空間,解決了管理記憶體空間的煩惱。

Java 語言是一種分散式的面嚮物件語言,具有面向物件、平臺無關性、簡單性、解釋執行、多執行緒、安全性等很多特點,下面針對這些特點我們來進行逐一介紹。

01

面向物件

Java 是一種面向物件的語言,它對物件中的類、物件、繼承、封裝、多型、介面、包等均有很好的支援。

為了簡單起見,Java 只支援類之間的單繼承,但是可以使用介面來實現多繼承。

使用 Java 語言開發程式,需要採用面向物件的思想設計程式和編寫程式碼。

02

平臺無關性

平臺無關性的具體表現在於,Java 是“一次編寫,到處執行(Write Once,Run any Where)”的語言。

因此採用 Java 語言編寫的程式具有很好的可移植性,而保證這一點的正是 Java 的虛擬機器機制。

在引入虛擬機器之後,Java 語言在不同的平臺上執行不需要重新編譯。Java 語言使用 Java 虛擬機器機制遮蔽了具體平臺的相關資訊,使得 Java 語言編譯的程式只需生成虛擬機器上的目的碼,就可以在多種平臺上不加修改地執行。

03

簡單性

Java 語言的語法與 C 語言和 C++ 語言很相近,使得很多程式設計師學起來很容易。

對 Java 來說,它捨棄了很多 C++ 中難以理解的特性,如操作符的過載和多繼承等。

而且 Java 語言不使用指標,加入了垃圾回收機制,解決了程式設計師需要管理記憶體的問題,使程式設計變得更加簡單。

04

解釋執行

Java 程式在 Java 平臺執行時會被編譯成位元組碼檔案,然後可以在有 Java 環境的作業系統上執行。

在執行檔案時,Java 的直譯器對這些位元組碼進行解釋執行,執行過程中需要加入的類在連線階段被載入到執行環境中。

05

多執行緒

Java 語言是多執行緒的,這也是 Java 語言的一大特性,它必須由 Thread 類和它的子類來建立。

Java 支援多個執行緒同時執行,並提供多執行緒之間的同步機制。

任何一個執行緒都有自己的 run() 方法,要執行的方法就寫在 run() 方法體內。

06

分散式

Java 語言支援 Internet 應用的開發,在 Java 的基本應用程式設計介面中就有一個網路應用程式設計介面。

它提供了網路應用程式設計的類庫,包括 URL、URLConnection、Socket 等。Java 的 RIM 機制也是開發分散式應用的重要手段。

07

健壯性

Java 的強型別機制、異常處理、垃圾回收機制等都是 Java 健壯性的重要保證。

對指標的丟棄是 Java 的一大進步。另外,Java 的異常機制也是健壯性的一大體現。

08

高效能

雖然Java是解釋執行的,但它仍然具有非常高的效能,在一些特定CPU上,Java位元組碼可以快速地轉換成機器碼執行。

Java位元組碼格式的設計就是針對機器碼的轉換,實際轉換時相當漸簡便,自動的暫存器分配與編譯器對位元組碼的一些優化可以生成高品質的程式碼。

隨著Java虛擬機器的改進和“即時編譯”- JIT(Just in Time)的發展,Java 的執行速度也越來越高。

09

安全性

Java 通常被用在網路環境中,為此,Java 提供了一個安全機制以防止惡意程式碼的攻擊。

除了 Java 語言具有許多的安全特性以外,Java 還對通過網路下載的類增加一個安全防範機制,分配不同的名字空間以防替代本地的同名類,幷包含安全管理機制。

Java 語言的眾多特性使其在眾多的程式語言中佔有較大的市場份額,Java 語言對物件的支援和強大的 API 使得程式設計工作變得更加容易和快捷,大大降低了程式的開發成本。

Java 的“一次編寫,到處執行”正是它吸引眾多商家和程式設計人員的一大優勢。

所以大廠們對Java的需求也是灰常大滴!

最新評論
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • TOP25漏洞型別8年後首次迎來更新