Core Java(一),corejava

來源:互聯網
上載者:User

Core Java(一),corejava
一. 緒

1.軟體:按照特定順序組織的電腦資料和指令的集合。

   軟體開發:藉助開發工具與電腦語言製作軟體

2.電腦語言:用於人與電腦通訊的語言

   分為機器語言,組合語言,進階語言

   進階語言分為編譯行語言和解釋型語言

   編譯型語言:來源程式編譯成二進位代碼的可運行程式,然後運行    原始碼-->機器碼         執行速度快,效率高,依賴編譯器,跨平台性差

   解釋型語言:來源程式翻譯一句執行一句,知道結束    原始碼-->中間代碼(位元組碼檔案)-->機器碼     執行速度慢,效率低,依賴解譯器,跨平台性好

通俗的講,編譯語言是在編譯後可以直接運行,而解釋語言的執行需要一個解釋環境。java很特殊,java程式也需要編譯,但是沒有直接編譯稱為機器語言,而是編譯稱為位元組碼,然後用解釋方式執行位元組碼。

 

—— 常用的 DOS 命令

       開啟DOS控制台的方式

               1、開始—程式—附件—命令提示字元

                 2、開始—運行—cmd—斷行符號

                 3、win+r—cmd—斷行符號

       常用的DOS命令

        d: 斷行符號 盤符切換

        dir(directory):列出目前的目錄下的檔案以及檔案夾

        md (make directory) : 建立目錄

        rd (remove directory): 刪除目錄

        cd (change directory)改變指定目錄(進入指定目錄)

        cd.. : 退回到上一級目錄

        cd\: 退回到根目錄

        del (delete): 刪除檔案,刪除一堆尾碼名一樣的檔案*.txt

        exit : 退出dos命令列

        cls : (clear screen)清屏

 

—— Java 語言平台版本

       J2SE  Java SE(Java 2 Platform Standard Edition)標準版

       是為開發普通案頭和商務應用程式提供的解決方案,該技術體系是其他兩者的基礎,可以完成一些傳統型應用程式的開發。

       J2ME(Java 2 Platform Micro Edition)小型版

       是為開發電子消費產品和嵌入式裝置提供的解決方案。

      

       J2EE(Java 2 Platform Enterprise Edition)企業版

       是為開發企業環境下的應用程式提供的一套解決方案,該技術體系中包含的技術如 Servlet、Jsp等,主要針對於Web應用程式開發。

 

    ——配置環境變數

              我的電腦(右鍵)—>屬性—>進階系統設定—>進階—>環境變數

              ——JAVA_HOME

                     系統變數內建是沒有JAVA_HOME這個變數,變數值就是JDK安裝的路徑,需要自己編輯如下:

 

              ——PATH

                      PATH在系統變數中本來就是存在的,在最前面輸入Bin的路徑(用分號隔開其他路徑),編輯如下:

$JAVA_HOME%\bin

C:\java\jdk\bin

 

 

               ——CLASSPATH 

                       系統內建的變數是沒有CLASSPATH的,需要添加

              

 

 

 

        這是 Java 的環境配置,配置完成後,可以啟動 Eclipse 來編寫代碼,它會自動完成java環境的配置。

        注意:如果使用1.5以上版本的JDK,不用設定CLASSPATH環境變數,也可以正常編譯和運行Java程式。

                   ——測試JDK是否安裝成功

                       1、"開始"->"運行",鍵入"cmd";

                       2、鍵入命令: java -version、java、javac 幾個命令,出現以下資訊,說明環境變數配置成功;

 

 

  —— Java 語言的主要特性

1.跨平台性

軟體不受電腦硬體和作業系統的約束,而在任意電腦環境下正常運行

在Java語言中, Java內建的虛擬機器很好地實現了跨平台性。

2.物件導向

3.安全性(魯棒性)

4.多線程

多線程是指允許一個應用程式同時存在兩個或兩個以上的線程,用於支援事務並發和多任務處理。 Java除了內建的多線程技術之外,還定義了一些類、方法等來建立和系統管理使用者定義的多線程。

5.簡單易用

 

——JRE JDK

   JRE(Java Runtime Environment    Java運行環境)

       包括Java虛擬機器(JVM Java Virtual Machine)和Java程式所需的核心類庫等,如果想要運行一個開發好的Java程式,電腦中只需要安裝JRE即可。

       JDK(Java Development Kit    Java開發套件)

       JDK是提供給Java開發人員使用的,其中包含了java的開發工具,也包括了JRE。所以安裝了JDK,就不用在單獨安裝JRE了。

       其中的開發工具:編譯工具(javac.exe)  打包工具(jar.exe)

       簡單而言:使用JDK開發完成的java程式,交給JRE去運行。

 

——Java的跨平台性

 

 

        因為有了JVM,所以同一個Java程式在三個不同的作業系統中都可以執行。這樣就實現了Java程式的跨平台性。也稱為Java具有良好的可移植性。

        Java語言是跨平台的,而JVM不是跨平台的。

 

        ——Bytecode(位元組碼檔案)

               位元組碼檔案是經過編譯器預先處理過的一種檔案,是JAVA的執行檔案存在形式,它本身是二進位檔案,但是不可以被系統直接執行,而是需要虛擬機器解釋執行,由於被預先處理過,所以比一般的解釋代碼要快,但是仍然會比系統直接執行的慢。

              機器碼,完全依附硬體而存在,並且不同硬體由於內嵌指令集不同,即使相同的0 1代碼 意思也可能是不同的~換句話說,根本不存在跨平台性~比如~不同型號的CPU,你給他個指令10001101,他們可能會解析為不同的結果。

                 我們知道JAVA是跨平台的,為什麼呢?因為他有一個jvm,不論那種硬體,只要你裝有jvm,那麼他就認識這個JAVA位元組碼,至於底層的機器碼,咱不用管,有jvm搞定,他會把位元組碼再翻譯成所在機器認識的機器碼。

 

——GC    記憶體回收行程

        Java的記憶體管理實際上就是對象的管理,其中包括對象的分配和釋放。

       對於程式員來說,指派至使用new關鍵字;釋放對象時,只要將對象所有引用賦值為null,讓程式不能夠再訪問到這個對象,我們稱該對象為“不可達的”,GC將負責回收所有“不可達”對象的記憶體空間。

       gc會開啟線程清理記憶體,不是及時回收的,根據記憶體效率,如果真的記憶體緊張了,才會回收,或者系統處於空閑狀態,才會回收,所以說gc優先順序較低,為的就是提高運行效率,程式員無法對其控制,由虛擬機器控制,我們只能提出建議,但是人家不一定接受。

      System.gc()/Runtime.gc()          //代碼作用建議記憶體回收此處進行工作

 

 

 

 

什麼是跨平台性?

       通過Java語言編寫的應用程式在不同的系統平台上都可以運行。

原理是什嗎?

       只要在需要運行java應用程式的作業系統上,

先安裝一個Java虛擬機器(JVM Java Virtual Machine)即可。由JVM來負責Java程式在該系統中的運行。

 

為什麼JDK中包含一個JRE呢?

      其一,開發完的程式,總需要運行一下看看效果。

      其二,也是最重要的,JDK中的開發工具其實都是java語言編寫的應用程式,為了方便使用才打包成exe檔案,如果沒有JRE,那麼這些工具是運行不了的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.