更新時間:2022-10-14 10:16:46 來源:動力節(jié)點 瀏覽1412次
Java 是一種面向?qū)ο蟮木幊陶Z言 ,專門設(shè)計用于關(guān)注對象。它是由 Sun Microsystems 的 James Gosling 在 1995 年創(chuàng)建的高級編程語言。Java 是一種快速、安全且可靠的編程語言,可用于各種游戲、小工具和應用程序。
Java Development Kit (JDK) 是 Java Development Kit 的首字母縮寫。它包括創(chuàng)建 Java 程序所需的工具和庫。JRE 代表 Java 運行時環(huán)境,它包括用于編譯 Java 程序的編譯器和調(diào)試器。這是JDK的一個特性。JRE 是運行 Java 程序所必需的一組庫和虛擬機 (JVM)。
面向?qū)ο螅?Java 遵循面向?qū)ο蟮募夹g(shù),并使用一個類中的對象集合來執(zhí)行任何操作。
安全:非常安全,因為它不會產(chǎn)生堆棧溢出等任何安全問題。這是因為它沒有使用指針的概念。
穩(wěn)健: Java 強大且可靠,因為它可以及早發(fā)現(xiàn)錯誤并避免垃圾收集、內(nèi)存分配和異常處理等問題。
簡單: Java 易于學習,不需要使用指針或多重繼承等高級編程概念。
平臺無關(guān):因為我們在任何操作系統(tǒng)上編譯和執(zhí)行的代碼都是一樣的,Java 是平臺無關(guān)的。這意味著代碼可以在一個系統(tǒng)上編譯并在另一個系統(tǒng)上運行。
多線程:支持多線程思想,這意味著我們可以同時運行兩個或多個程序,最大限度地提高 CPU 利用率。
出色的性能: Java 利用即時編譯器確保高性能。
動態(tài):與 C 或 C++ 等其他編程語言相比,Java 更具動態(tài)性。這是因為它可以攜帶大量運行時信息,我們可以使用這些信息來驗證運行時對象的訪問。
在 java 中,JVM 將內(nèi)存分配給不同的進程、方法和對象。JVM 也依賴于平臺。JVM 提供執(zhí)行 java 文件的環(huán)境。JVM分配的一些內(nèi)存區(qū)域是:
ClassLoader:它是JVM的一個組件,用于加載類文件。
類(方法)區(qū):它存儲每個類的結(jié)構(gòu),例如運行時常量池、字段和方法數(shù)據(jù)以及方法的代碼。
堆:堆創(chuàng)建了一個運行時,它包含分配對象的運行時數(shù)據(jù)區(qū)。
堆棧: 堆棧在運行時存儲局部變量、引用變量和部分結(jié)果。它還有助于方法調(diào)用和返回值。每個線程在創(chuàng)建線程時都會創(chuàng)建一個私有 JVM 堆棧。
程序計數(shù)器寄存器:此內(nèi)存區(qū)域包含當前正在執(zhí)行的 Java 虛擬機指令的地址。
本機方法堆棧:此區(qū)域為應用程序中使用的所有本機方法保留。
以下是 Java 平臺與其他平臺之間的主要區(qū)別:
Java 平臺是一個純軟件平臺,可在其他基于硬件的平臺之上運行;其他平臺主要是硬件軟件或純硬件,只能在硬件上運行。在任何操作系統(tǒng)上,程序員都可以編寫 Java 代碼。Java 字節(jié)碼可以在任何支持它的平臺上運行。
另一方面,其他語言需要為特定平臺開發(fā)的庫才能運行。
不,你不能這樣寫。任何方法都必須先指定修飾符,然后是返回值。修飾符可以按任何順序重新排列。
代替 public static void main(),我們可以使用 static public void main()。
Sun 對 Java SE、標準版以及 Java 虛擬機、CORBA 等一組相關(guān)技術(shù)的指定是“Core Java”。例如,這主要是為了將其與 Java ME 或 Java EE 區(qū)分開來。還值得注意的是,它們指的是庫集合而不是編程語言。
存儲固定數(shù)量的單一類型值的容器對象稱為數(shù)組。數(shù)組的長度在創(chuàng)建時確定。它的長度在創(chuàng)建時設(shè)置。
byte 和 char都是Java 中的數(shù)字數(shù)據(jù)類型,它們可以表示一個范圍內(nèi)的整數(shù),但它們有著根本的不同。byte 和 char 數(shù)據(jù)類型的主要區(qū)別在于前者用于存儲原始二進制數(shù)據(jù),而后者用于存儲字符或文本數(shù)據(jù)。字符文字可以存儲在 char 變量中,
例如,char ch ='x'; 字符文字用單引號括起來。byte 變量可以存儲 -128 到 127 之間的任何值,但 char 變量可以存儲 0 到 255 之間的任何值。
Java 是一種面向?qū)ο蟮木幊陶Z言,它允許我們構(gòu)建和操作事物。構(gòu)造函數(shù)類似于方法,因為它是一段代碼。它用于制作對象并設(shè)置實體的初始狀態(tài)。構(gòu)造函數(shù)是與類同名的獨一無二的函數(shù)。沒有構(gòu)造函數(shù)就沒有其他方法可以創(chuàng)建對象。默認情況下,Java 中的每個對象都有一個默認的函數(shù)構(gòu)造函數(shù)。
Java 支持以下構(gòu)造函數(shù):
默認或非參數(shù)化構(gòu)造函數(shù)
參數(shù)化構(gòu)造函數(shù)
復制構(gòu)造函數(shù)
我們知道static關(guān)鍵字指的是一個類而不是一個類的對象。不使用靜態(tài)構(gòu)造函數(shù),因為在創(chuàng)建類對象時會調(diào)用構(gòu)造函數(shù)。要考慮的另一點是,如果我們指定靜態(tài)函數(shù)構(gòu)造函數(shù),我們將無法從子類訪問或調(diào)用它。因為我們知道,雖然類中允許使用靜態(tài),但子類中不允許使用靜態(tài)。
當我們將一個方法標記為final 時,我們是在說我們不希望任何其他類覆蓋它。但是,構(gòu)造函數(shù)不能更改(根據(jù) Java 語言規(guī)范)。因此,將其指定為 final 是沒有意義的。
當我們將方法標記為抽象時,我們表明它沒有主體,應該在子類中實現(xiàn)。然而,當使用 new 關(guān)鍵字時,構(gòu)造函數(shù)被隱式調(diào)用。因此,它需要一個身體。