日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

Core Java(一)

發(fā)布時(shí)間:2025/4/9 java 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Core Java(一) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一. 緒

1.軟件:按照特定順序組織的計(jì)算機(jī)數(shù)據(jù)和指令的集合。

?? 軟件開(kāi)發(fā):借助開(kāi)發(fā)工具與計(jì)算機(jī)語(yǔ)言制作軟件

2.計(jì)算機(jī)語(yǔ)言:用于人與計(jì)算機(jī)通訊的語(yǔ)言

?? 分為機(jī)器語(yǔ)言,匯編語(yǔ)言,高級(jí)語(yǔ)言

?? 高級(jí)語(yǔ)言分為編譯行語(yǔ)言和解釋型語(yǔ)言

?? 編譯型語(yǔ)言:源程序編譯成二進(jìn)制代碼的可運(yùn)行程序,然后運(yùn)行??? 源代碼-->機(jī)器碼???????? 執(zhí)行速度快,效率高,依賴編譯器,跨平臺(tái)性差

?? 解釋型語(yǔ)言:源程序翻譯一句執(zhí)行一句,知道結(jié)束 ?? 源代碼-->中間代碼(字節(jié)碼文件)-->機(jī)器碼???? 執(zhí)行速度慢,效率低,依賴解釋器,跨平臺(tái)性好

通俗的講,編譯語(yǔ)言是在編譯后可以直接運(yùn)行,而解釋語(yǔ)言的執(zhí)行需要一個(gè)解釋環(huán)境。java很特殊,java程序也需要編譯,但是沒(méi)有直接編譯稱為機(jī)器語(yǔ)言,而是編譯稱為字節(jié)碼,然后用解釋方式執(zhí)行字節(jié)碼。

?

——常用的DOS命令

???????打開(kāi)DOS控制臺(tái)的方式

???????????????1、開(kāi)始程序附件命令提示符

?????????????????2、開(kāi)始運(yùn)行cmd回車

?????????????????3win+rcmd回車

???????常用的DOS命令

????????d: 回車 盤(pán)符切換

????????dir(directory):列出當(dāng)前目錄下的文件以及文件夾

????????md (make directory) : 創(chuàng)建目錄

????????rd (remove directory): 刪除目錄

????????cd (change directory)改變指定目錄(進(jìn)入指定目錄)

????????cd.. : 退回到上一級(jí)目錄

????????cd\: 退回到根目錄

????????del (delete): 刪除文件,刪除一堆后綴名一樣的文件*.txt

????????exit : 退出dos命令行

????????cls : (clear screen)清屏

?

——Java語(yǔ)言平臺(tái)版本

???????J2SE ?Java SE(Java 2 Platform Standard Edition)標(biāo)準(zhǔn)版

???????是為開(kāi)發(fā)普通桌面和商務(wù)應(yīng)用程序提供的解決方案,該技術(shù)體系是其他兩者的基礎(chǔ),可以完成一些桌面應(yīng)用程序的開(kāi)發(fā)。

???????J2ME(Java 2 Platform Micro Edition)小型版

???????是為開(kāi)發(fā)電子消費(fèi)產(chǎn)品和嵌入式設(shè)備提供的解決方案。

??????

???????J2EE(Java 2 Platform Enterprise Edition)企業(yè)版

???????是為開(kāi)發(fā)企業(yè)環(huán)境下的應(yīng)用程序提供的一套解決方案,該技術(shù)體系中包含的技術(shù)如 ServletJsp等,主要針對(duì)于Web應(yīng)用程序開(kāi)發(fā)。

?

????——配置環(huán)境變量

????????????? 我的電腦(右鍵)—>屬性—>高級(jí)系統(tǒng)設(shè)置—>高級(jí)—>環(huán)境變量

??????????????——JAVA_HOME

?????????????????????系統(tǒng)變量自帶是沒(méi)有JAVA_HOME這個(gè)變量,變量值就是JDK安裝的路徑,需要自己編輯如下:

?

??????????????——PATH

??????????????????????PATH在系統(tǒng)變量中本來(lái)就是存在的,在最前面輸入Bin的路徑(用分號(hào)隔開(kāi)其他路徑),編輯如下:

$JAVA_HOME%\bin

C:\java\jdk\bin

?

?

???????????????——CLASSPATH?

???????????????????????系統(tǒng)自帶的變量是沒(méi)有CLASSPATH的,需要添加

??????????????

?

?

?

????????這是 Java 的環(huán)境配置,配置完成后,可以啟動(dòng) Eclipse 來(lái)編寫(xiě)代碼,它會(huì)自動(dòng)完成java環(huán)境的配置。

????????注意:如果使用1.5以上版本的JDK,不用設(shè)置CLASSPATH環(huán)境變量,也可以正常編譯和運(yùn)行Java程序。

???????????????????——測(cè)試JDK是否安裝成功

???????????????????????1、"開(kāi)始"->"運(yùn)行",鍵入"cmd";

???????????????????????2、鍵入命令: java -version、java、javac 幾個(gè)命令,出現(xiàn)以下信息,說(shuō)明環(huán)境變量配置成功;

?

?

?——Java語(yǔ)言的主要特性

1.跨平臺(tái)性

軟件不受計(jì)算機(jī)硬件和操作系統(tǒng)的約束,而在任意計(jì)算機(jī)環(huán)境下正常運(yùn)行

Java語(yǔ)言中, Java自帶的虛擬機(jī)很好地實(shí)現(xiàn)了跨平臺(tái)性。

2.面向?qū)ο?/strong>

3.安全性(魯棒性)

4.多線程

多線程是指允許一個(gè)應(yīng)用程序同時(shí)存在兩個(gè)或兩個(gè)以上的線程,用于支持事務(wù)并發(fā)和多任務(wù)處理。 Java除了內(nèi)置的多線程技術(shù)之外,還定義了一些類、方法等來(lái)建立和管理用戶定義的多線程。

5.簡(jiǎn)單易用

?

——JREJDK

???JRE(Java Runtime Environment ???Java運(yùn)行環(huán)境)

???????包括Java虛擬機(jī)(JVM Java Virtual Machine)Java程序所需的核心類庫(kù)等,如果想要運(yùn)行一個(gè)開(kāi)發(fā)好的Java程序,計(jì)算機(jī)中只需要安裝JRE即可。

???????JDK(Java Development Kit ???Java開(kāi)發(fā)工具包)

???????JDK是提供給Java開(kāi)發(fā)人員使用的,其中包含了java的開(kāi)發(fā)工具,也包括了JRE。所以安裝了JDK,就不用在單獨(dú)安裝JRE了。

???????其中的開(kāi)發(fā)工具:編譯工具(javac.exe) ?打包工具(jar.exe)

???????簡(jiǎn)單而言:使用JDK開(kāi)發(fā)完成的java程序,交給JRE去運(yùn)行。

?

——Java的跨平臺(tái)性

?

?

????????因?yàn)橛辛?span style="color:#000000;">JVM,所以同一個(gè)Java程序在三個(gè)不同的操作系統(tǒng)中都可以執(zhí)行。這樣就實(shí)現(xiàn)了Java程序的跨平臺(tái)性。也稱為Java具有良好的可移植性。

????????Java語(yǔ)言是跨平臺(tái)的,而JVM不是跨平臺(tái)的。

?

????????——Bytecode(字節(jié)碼文件)

???????????????字節(jié)碼文件是經(jīng)過(guò)編譯器預(yù)處理過(guò)的一種文件,是JAVA的執(zhí)行文件存在形式,它本身是二進(jìn)制文件,但是不可以被系統(tǒng)直接執(zhí)行,而是需要虛擬機(jī)解釋執(zhí)行,由于被預(yù)處理過(guò),所以比一般的解釋代碼要快,但是仍然會(huì)比系統(tǒng)直接執(zhí)行的慢。

??????????????機(jī)器碼,完全依附硬件而存在,并且不同硬件由于內(nèi)嵌指令集不同,即使相同的0 1代碼 意思也可能是不同的~換句話說(shuō),根本不存在跨平臺(tái)性~比如~不同型號(hào)的CPU,你給他個(gè)指令10001101,他們可能會(huì)解析為不同的結(jié)果。

?????????????????我們知道JAVA是跨平臺(tái)的,為什么呢?因?yàn)樗幸粋€(gè)jvm,不論那種硬件,只要你裝有jvm,那么他就認(rèn)識(shí)這個(gè)JAVA字節(jié)碼,至于底層的機(jī)器碼,咱不用管,有jvm搞定,他會(huì)把字節(jié)碼再翻譯成所在機(jī)器認(rèn)識(shí)的機(jī)器碼。

?

——GC????垃圾回收器

????????Java的內(nèi)存管理實(shí)際上就是對(duì)象的管理,其中包括對(duì)象的分配和釋放。

?????? 對(duì)于程序員來(lái)說(shuō),分配對(duì)象使用new關(guān)鍵字;釋放對(duì)象時(shí),只要將對(duì)象所有引用賦值為null,讓程序不能夠再訪問(wèn)到這個(gè)對(duì)象,我們稱該對(duì)象為“不可達(dá)的”,GC將負(fù)責(zé)回收所有“不可達(dá)”對(duì)象的內(nèi)存空間。

? ? ?? gc會(huì)開(kāi)啟線程清理內(nèi)存,不是及時(shí)回收的,根據(jù)內(nèi)存效率,如果真的內(nèi)存緊張了,才會(huì)回收,或者系統(tǒng)處于空閑狀態(tài),才會(huì)回收,所以說(shuō)gc優(yōu)先級(jí)較低,為的就是提高運(yùn)行效率,程序員無(wú)法對(duì)其控制,由虛擬機(jī)控制,我們只能提出建議,但是人家不一定接受。

??????System.gc()/Runtime.gc() ?????????//代碼作用建議垃圾回收此處進(jìn)行工作

?

?

?

?

什么是跨平臺(tái)性?

???????通過(guò)Java語(yǔ)言編寫(xiě)的應(yīng)用程序在不同的系統(tǒng)平臺(tái)上都可以運(yùn)行。

原理是什么?

???????只要在需要運(yùn)行java應(yīng)用程序的操作系統(tǒng)上,

先安裝一個(gè)Java虛擬機(jī)(JVM Java Virtual Machine)即可。由JVM來(lái)負(fù)責(zé)Java程序在該系統(tǒng)中的運(yùn)行。

?

為什么JDK中包含一個(gè)JRE呢?

??????其一,開(kāi)發(fā)完的程序,總需要運(yùn)行一下看看效果。

??????其二,也是最重要的,JDK中的開(kāi)發(fā)工具其實(shí)都是java語(yǔ)言編寫(xiě)的應(yīng)用程序,為了方便使用才打包成exe文件,如果沒(méi)有JRE,那么這些工具是運(yùn)行不了的。

轉(zhuǎn)載于:https://www.cnblogs.com/wcoding/p/8526001.html

總結(jié)

以上是生活随笔為你收集整理的Core Java(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。