自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java三大版本&JDK、JRE、JVM

開發(fā) 前端
JDK是整個Java的核心,包括了Java運行環(huán)境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基本的類庫(即Java API包括rt.jar)。

Java三大版本

Write Once、Run Anywhere(一次編寫,隨處運行)

  • JavaSE:標(biāo)準(zhǔn)版(桌面程序、控制臺開發(fā)......),Java的基礎(chǔ)與核心,也是JavaEE和JavaME技術(shù)的基礎(chǔ)。
  • JavaME:嵌入式開發(fā)(手機(jī)、小家電......),應(yīng)用范圍較小
  • JavaEE:E企業(yè)級開發(fā)(web端、服務(wù)器開發(fā)......),是Java技術(shù)應(yīng)用最廣泛的領(lǐng)域,JavaSE是JavaEE的基礎(chǔ)。

JDK、JRE、JVM之間的關(guān)系

關(guān)系:JDK包含JRE,JRE包含JVM

  • JDK(Java Development Kit):Java開發(fā)工具包,用于Java程序的開發(fā)。
  • JRE(Java Runtime Environment):Java運行時環(huán)境,只能運行.class文件,不能編譯。
  • JVM(Java Virtual Machine):Java虛擬機(jī),Java運行時環(huán)境。

一、JDK

JDK(Java Development Kit),Java開發(fā)工具包,用于Java程序的開發(fā),針對開發(fā)者。

JDK是整個Java的核心,包括了Java運行環(huán)境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基本的類庫(即Java API包括rt.jar)。

JavaAPI是Java的應(yīng)用程序接口,里面有很多已經(jīng)寫好的Java Class,包括一些重要的語言結(jié)構(gòu)以及基本圖形,網(wǎng)絡(luò)和文件I/O等等,我們可以直接調(diào)用使用。

二、JRE

JRE(Java Runtime Environment),Java運行時環(huán)境,只能運行.class文件,不能編譯,針對用戶。JRE,包含了一個JVM(Java虛擬機(jī)),與Java核心類庫與其所支持的文件。與JDK不同,它不包含開發(fā)工具——編譯器、調(diào)試器和其它工具。

將Java源程序(擴(kuò)展名為.java的文件)

JRE,是運行Java程序必不可少的,編寫好的Java程序必須要JRE才能運行,如果想運行一個開發(fā)好的Java程序,計算機(jī)中只需要安裝JRE即可。

包含關(guān)系:

JDK—>JRE、JAVA基礎(chǔ)類庫

JRE—>JVM、Java核心類庫

三、JVM

JVM(Java Virtual Machine),Java虛擬機(jī),Java運行時環(huán)境。

Java虛擬機(jī),是一種虛擬出來的計算機(jī),是通過在實際的計算機(jī)上模擬仿真各種計算機(jī)功能實現(xiàn)的。

JVM功能:將字節(jié)碼文件(擴(kuò)展名為.class的文件)解釋成具體系統(tǒng)平臺的機(jī)器指令。

JVM,是整個Java實現(xiàn)跨平臺的最核心的部分,所有的Java程序會首先被編譯為.class的類文件,這種類文件可以在虛擬機(jī)上執(zhí)行,也就是說class并不直接與機(jī)器的操作系統(tǒng)相對應(yīng),而是經(jīng)過虛擬機(jī)間接與操作系統(tǒng)交互,由虛擬機(jī)將程序解釋給本地系統(tǒng)執(zhí)行。

每日三道Java面試題

1.Java有哪幾種基本數(shù)據(jù)類型?

Java有4類8種數(shù)據(jù)類型,它們分別是

1.整形:byte、short、int、long

2.浮點型:float、double

3.字符型:char

4.布爾型:boolean

2.==和equals比較有什么區(qū)別?

==:

如果比較的對象是基本數(shù)據(jù)類型,則比較的是數(shù)值是否一致;

如果比較的是引用數(shù)據(jù)類型,則比較的是對象的地址是否一致。

equals():

equals()默認(rèn)用來比較對象的地址是是否一致,不能用于比較基本數(shù)據(jù)類型,如果對象和自身進(jìn)行比較,則equals()方法與==的作用是一樣的。

public boolean equals(Object obj){
return (this == obj);
}

那為什么常用equals()來比較String字符串的內(nèi)容相等是為什么呢?

那是因為對于String、Date、Integer等類型重寫了equals方法,使其比較的是存儲對象的內(nèi)容是否相等,而不是內(nèi)存地址。

如String類,已經(jīng)重寫了equals方法:

public boolean equals(Object anObject) {
if(this == anObject) {
return true;
}
if(anObject instanceof String) {
String anotherString = (String)anObject;
int n = value.length;
if(n == anotherString.value.length) {
char v1[] = value;
char v2[] = anotherString.value;
int i = 0;
while (n -- != 0) {
if(v1[i] != v2[i])
return false;
i++;
}
return true;
}
}
return false;
}

3.Java支持xx ≠ null 不等于寫法嗎?

不支持,正常的不等于寫法是:!=

?本文轉(zhuǎn)載自微信公眾號「崔九八」,作者「崔九八」,可以通過以下二維碼關(guān)注。

轉(zhuǎn)載本文請聯(lián)系「崔九八」公眾號。

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2009-06-25 14:46:50

JDKJREJVM

2009-07-08 10:41:54

JDK JRE JVM

2010-09-26 14:32:34

JDKJREJVM

2010-09-25 14:58:12

JVMJDKJRE

2010-09-27 11:32:41

JVMJREJDK

2023-09-27 08:46:44

Java 技術(shù)編程語言

2010-09-27 14:50:22

JDKJREJVM

2009-07-08 09:47:47

安裝JDKJREJVM

2010-09-26 14:13:31

JDKJREJVM

2009-07-08 18:07:58

jvm jre

2022-06-27 08:24:34

JDKJavaJRE

2022-02-16 22:50:28

JVMJDKJRE

2022-02-15 20:08:41

JDKJavaWindows

2009-07-08 17:59:51

JDK JRE

2010-09-17 17:18:35

EclipseJVM

2021-07-26 08:29:03

Java SEJREJDK

2009-07-09 13:44:12

JDK JRE

2019-07-24 10:11:51

jdkjreJava

2009-07-09 16:33:06

eclipse jvm

2009-07-09 10:01:26

設(shè)置JVM內(nèi)存分配
點贊
收藏

51CTO技術(shù)棧公眾號