JAVA簡介特性

      網友投稿 766 2025-03-31

      1、Java語言的特性

      1.1、簡單性

      Java語言當中真正操作內存的是:JVM(Java虛擬機)

      所有的java程序都是運行在Java虛擬機當中的。

      而Java虛擬機執行過程中再去操作內存。

      對于C或者C++來說程序員都是可以直接通過指針操作內存的。

      C或者C++更靈活,可以直接程序員操作內存,但是要求程序員技術精湛。

      C語言或者C++更有駕馭感。

      Java語言屏蔽了指針概念,程序員不能直接操作指針,或者說程序員

      不能直接操作內存。這種方式有優點也有缺點:

      優點:不容易導致內存泄漏。(簡單了。)

      缺點:效率問題,包括駕馭感比較差。

      飛機航行: 如果是C語言表示程序員是飛機駕駛員。 如果是Java語言表示程序員是飛機上的乘客。

      Java語言底層是C++,所以JVM是用C++語言寫好的一個虛擬的電腦。

      JVM在哪里?安裝了JDK之后,JVM就代表安裝好了。

      內存是什么?

      對于計算機來說:最主要的幾個部件是什么?

      CPU:

      中央處理器,相當于人類的大腦,負責發送并執行指令。

      是整個計算機的指揮官。

      CPU是負責計算的,負責運算的。

      10 + 20 = 30

      CPU負責將30這個結果計算出來。

      但是在計算過程中有三個數據需要臨時找個空間存儲一下:

      這三個數據分別是:10 20 30

      內存: 程序運行過程當中的臨時數據存儲空間。 斷電之后或者關機之后內存中的數據就消失了。 硬盤: 持久化設備,硬盤上的數據不會因斷電而丟失。 主板: 相當于人類的軀干,是一個載體: CPU、內存條、硬盤等主要的部件都是放在主板上的, 主板上有很多線,將以上的部件鏈接起來。 .....

      1.2、java是堪稱完全面向對象的。

      面向對象更容易讓人理解,人類通常是以對象的方式認知世界的。

      采用面向對象的方式可以讓復雜問題簡單化。

      1.3、健壯性

      主要是因為Java中有一種機制:自動垃圾回收機制(GC機制)。

      java語言是健壯的,相對于C語言來說,C語言沒有Java健壯。

      Java不容易導致內存的泄漏。

      C++或者C語言使用不當時很容易導致內存泄漏。

      JVM負責調度GC機制。程序員不需要干涉。

      以上講解中又描述了這幾個術語:

      JVM(C++語言寫的一個虛擬的計算機)、GC(垃圾回收機制)

      1.4、java完全/完美支持多線程并發。

      1.5、可移植性/跨平臺

      java語言只要編寫一次,可以做到到處運行。

      例如:java程序編寫完之后,可以運行在windows操作系統上,

      不需要做任何改動可以直接運行在Linux操作系統上,同樣也

      可以運行到MaC OS上面。

      一次編寫,到處運行。(平臺改變了,程序不需要改。)

      JVM這種機制實現了跨平臺,那么這種機制優點和缺點分別是什么?

      優點:一次編寫到處運行,可以跨平臺。

      缺點:麻煩。對于運行java程序來說必須先有一個JVM。

      就像你要想在網頁上看視頻,你必須先安裝一個flash是一樣的。

      Java語言可以編寫病毒嗎?

      可以,沒問題。但是很難讓用戶中毒。

      中毒的一般都是java程序員。所以很少有人編寫java的病毒腳本。

      2、JDK、JRE、JVM三者之間的關系?

      JDK:Java開發工具箱

      JRE:java運行環境

      JVM:java虛擬機

      JDK包括JRE,JRE包括JVM。

      JVM是不能獨立安裝的。

      JRE和JDK都是可以獨立安裝的。

      有單獨的JDK安裝包。

      也有單獨的JRE安裝包。

      沒有單獨的JVM安裝包。

      安裝JDK的時候:JRE就自動安裝了,同時JRE內部的JVM也就自動安裝了。

      安裝JRE的時候:JVM也就自動安裝了。

      問題:

      假設你在軟件公司開發了一個新的軟件,現在要去客戶那邊給客戶把

      項目部署一下,把項目跑起來,你需要安裝JDK嗎?

      只需要安裝JRE就行了。

      JAVA簡介及特性

      JRE體積很小,安裝非常便捷快速。

      問題:

      為什么安裝JDK的時候會自帶一個JRE?

      因為java程序員開發完程序之后,要測試這個程序,

      讓這個程序運行起來,需要JRE。所以JDK安裝的時候

      內部自帶一個JRE。

      3、到目前為止,我們接觸過的重點術語,總結一下:

      Java體系的技術被劃分為三大塊: JavaSE:標準版 JavaEE:企業版 JavaME:微型版 安裝JDK之后: JDK:java開發工具箱 JRE:Java運行環境 JVM:Java虛擬機

      4、對Java的加載與執行的理解(理論比較重要)

      java程序從編寫到最終運行經歷了哪些過程????

      java程序非常重要的兩個階段:

      編譯階段

      運行階段

      注意:java程序員直接編寫的java代碼(普通文本)是無法執行被JVM識別的。java程序員編寫的java代碼這種普通文本必須經過一個編譯,將這個“普通文本代碼”變成“字節碼”,JVM能夠識別“字節碼”。

      java代碼這種普通文本變成字節碼的過程,被稱為:編譯。

      java代碼這種普通文本被稱為:java源代碼。(你編寫的代碼是源代碼)

      源代碼不能直接執行,需要先進行編譯,生成源代碼對應的“字節碼”

      JVM可以識別的是字節碼。

      編譯階段和運行階段可以在不同的操作系統上完成嗎?

      在windows上編譯 編譯之后生成了“字節碼” 把“字節碼”放到linux上運行 完全可以,因為Java是跨平臺的。 可以做到一次編寫到處運行。

      java源代碼一旦編譯之后,源代碼可以刪除嗎?只留下字節碼可以執行嗎?

      完全可以執行,因為源代碼不參與程序的執行過程。 參與程序執行過程的是字節碼。 但是最好不要刪除源代碼。因為有可能執行結果不是你需要的, 當執行結果不是你需要的時候,你可以重新打開源代碼進行修改, 然后重新編譯生成新的字節碼,再重新執行。這樣會有新的執行效果。

      放源代碼的文件擴展名必須是:xxx.java

      并且需要注意的是:編譯生成的字節碼文件擴展名是:xxx.class

      .java文件就是源文件,這個文件中編寫源代碼。

      .class文件就是字節碼文件,這個文件是編譯源代碼而得到的。

      另外需要注意的是:

      1個java源文件是可以編譯生成多個class文件的。 最終運行的是class文件。

      問題:字節碼文件是二進制文件嗎?

      字節碼文件不是二進制文件。 如果是二進制的話,就不需要JVM了。 因為操作系統可以直接執行二進制。

      java程序從開發到最終運行經歷了什么?

      編譯期:(可以在windows上) 第一步:在硬盤的某個位置(隨意),新建一個xxx.java文件 第二步:使用記事本或者其它文本編輯器例如EditPlus打開xxx.java文件 第三步:在xxx.java文件中編寫“符合java語法規則的”源代碼。 第四步:保存(一定要將xxx.java文件保存一下) 第五步:使用編譯器(javac【JDK安裝后自帶】)對xxx.java文件進行編譯。 第六步:如果xxx.java文件中編寫的源代碼是符合語法規則的,編譯會通過, 如果xxx.java文件中編寫的源代碼違背了語法規則,那么編譯器會報錯,編譯器 報錯之后class文件是不會生成的,只有編譯通過了才會生成class字節碼文件。 并且一個java源文件是可以生成多個class文件的。(編譯實質上是檢查語法) 運行期:(JRE在起作用):(可以在windows上,也可以在其他的OS上。) 第七步:如果是在Linux上運行,需要將windows上生成的class文件拷貝過去 不需要拷貝源代碼,真正運行的是字節碼。(但是源代碼也不要刪除,有用) 第八步:使用JDK自帶的一個命令/工具:java(負責運行的命令/工具)執行字節碼 第九步:往下的步驟就全部交給JVM了,就不需要程序員干涉了。 JVM會將字節碼文件裝載進去,然后JVM對字節碼進行解釋(解釋器負責將字節碼 解釋為1010101010..等的二進制) 第十步:JVM會將生成的二進制碼交給OS操作系統,操作系統會執行二進制碼和 硬件進行交互。

      注意:在以上的過程中,需要使用兩個非常重要的命令?

      1. javac 命令,負責編譯

      2. java 命令,負責運行

      小插曲:

      xxx.java源文件經過編譯之后生成了A.class、B.class、C.class等文件, 那么我們稱A是一個類、B是一個類、C是一個類。其中A、B、C是類的名字。 沒有為什么,死記硬背,SUN公司的java語法就是這么規定的。 A/B/C是類的名稱。A類、B類、C類。

      源文件中編寫的代碼叫做:源代碼。

      以上是一個復雜的過程,那么縮減一下,程序員到底要干啥?

      新建java文件 打開java文件 寫java源代碼 保存 javac命令編譯 java命令運行 編寫、編譯、運行

      5、編寫java中的第一個java程序:HelloWorld(你好世界)

      這個程序不需要大家理解,大家照抄就行,因為目前我也不會講解這個程序為什么這么寫。

      主要是為了搭建java的開發環境,測試java的環境是否能用。

      第一步:安裝文本編輯器(EditPlus) 第二步:安裝JDK(先下載JDK) 安裝JDK13,直接下一步就行。 JDK13安裝的時候內置了一個JRE,獨立于JDK之外的JRE并沒有生成。 對于java13來說,如果你希望生成一個獨立于JDK之外的JRE的話需要執行特殊的命令。 這里先不講,后期用到的時候再說。 注意的是: JDK8安裝的時候,不僅JDK內置了一個JRE,而且還會在JDK目錄之外 獨立的生成一個單獨的JRE。(以前低版本的時候,JRE實際上是有2個。) 一個是JDK內置的,一個是獨立于JDK之外的。 JDK的bin目錄下有: javac.exe 負責編譯 java.exe 負責運行 第三步:寫代碼 寫一下第一個程序HelloWorld。 這個代碼在此強調: 文件名照抄 文件內容代碼嚴格照抄 照抄大小寫 照抄任何一個環節 照抄標點符號 括號: [] () {} 都要成對寫。 第四步:編譯 第五步:運行

      Java

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:采購訂單處理流程(采購訂單處理流程怎么寫)
      下一篇:在線自定義表單vue(自定義表單實現原理)
      相關文章
      亚洲高清国产拍精品熟女| 亚洲大尺度无码无码专线一区| 久久亚洲色WWW成人欧美| 亚洲影院在线观看| 亚洲av综合av一区| 亚洲va在线va天堂va四虎 | 亚洲视频免费在线观看| 中文字幕亚洲一区| 亚洲一区二区三区乱码A| 亚洲区小说区图片区| 亚洲区小说区图片区| 狠狠亚洲狠狠欧洲2019| 亚洲熟妇中文字幕五十中出| 亚洲一区二区三区无码中文字幕| 亚洲色成人网站WWW永久| 久久精品国产亚洲一区二区| 亚洲AV永久无码精品| 亚洲自偷自偷精品| 亚洲国产模特在线播放| 亚洲成人激情小说| 日本亚洲欧美色视频在线播放| 午夜亚洲乱码伦小说区69堂| 亚洲av无码天堂一区二区三区 | 欧洲亚洲综合一区二区三区| 亚洲国产精品13p| 国产成人麻豆亚洲综合无码精品| 国产亚洲一区二区手机在线观看| 亚洲AV无码乱码在线观看裸奔| 亚洲综合久久综合激情久久| 亚洲理论片在线观看| 亚洲一区免费视频| 亚洲精品人成网线在线播放va| 婷婷国产偷v国产偷v亚洲| 久久精品国产精品亚洲人人 | 亚洲日韩欧洲无码av夜夜摸| 久久久久亚洲av无码尤物| 亚洲日韩乱码久久久久久| 亚洲男人天堂2022| 亚洲成a人一区二区三区| 亚洲伊人久久精品影院| 亚洲黄色在线观看网站|