搜尋
首頁Javajava教程Java概述+環境搭建

Java概述+環境搭建

Jun 23, 2017 pm 04:27 PM
java概述環境

寫在前面的話:

  Java基礎的東西看過好幾遍,但是過一段都就忘記了,所以這次我決定花一些時間整理一個系列部落格供以後方便查閱。此系列根據Java程式設計想法+Java核心技術兩本書整理而來,這兩本書也是我極力推薦大家看的兩本,因為每次看都有不同的收穫,兩本橫向看相輔相成定會讓你受益匪淺,好了敬請期待吧!

第一節:Java簡介

#  Java是由Sun公司在1995年5月推出的一種物件導向的程式語言,極佳的實現了物件導向理論,更重視物件的本身不用太關注事件的過程。

  Java透過Java程式語言+Java類別格式檔案+Java虛擬機器+Java應用程式介面四部分組成,我們透過IDE定義不同的類別文件,透過呼叫類別的方法(Java API)來存取資源系統,把原始檔案編譯成.class的文件,透過Java虛擬機器執行該文件。

  Java白皮書:

  • 簡單:文法簡單易懂,剔除C++中難以理解的頭文件指標等,類別庫小,但隨著類別庫的增加和線程的支援大小增加面向對象:更關注對象的本身,而不需要太關注實現的過程。

  • 網路技能:Java的網路能力簡單且易於使用,用於處理像http或ftp之類的TCP/IP協議,允許透過URL開啟或存取網路上的物件。

  • 健壯性:Java的強型別機制、異常處理、垃圾的自動收集等是Java程式健壯性的重要保證。 Java採用指標模型可以消除重寫記憶體和損壞資料的可能性,Java不需要使用指標建構字串陣列等機構,但如果必要Java也具有指標能力如:鍊錶。

  • 安全性:Java沒有指針,所以程式設計師不能得到隱藏的內幕和偽造指針去指向記憶體。更重要的是,Java編譯程式不處理儲存安排決策,所以程式設計師不能透過查看聲明去猜測類別的實際儲存安排。編譯的Java程式碼中的儲存引用在執行時由Java解釋程式決定實際儲存位址。

  • 可移植性:Java使得語言宣告不依賴實作的面向。例如,Java明確說明每個基本資料類型的大小和它的運算行為(這些資料類型由Java語法描述)。 Java環境本身對新的硬體平台和作業系統是可移植的。 Java編譯程式也用Java寫,而Java運行系統用ANSIC語言寫。

  • 解釋性:Java程式在Java平台上被編譯為字節碼格式,然後可以在實作這個Java平台的任何系統中執行。在執行時,Java平台中的Java解釋器會對這些字節碼進行解釋執行,執行過程中所需的類別在聯接階段被載入到運行環境中。

  • 高效能:Java程式可以在任何實作了Java解釋程式和執行系統(run-time system)的系統上運作。

  • 多執行緒:多執行緒可以帶來更好的互動回應和使用者行為。

  • 動態:Java語言設計成適應變化的環境,它是一個動態的語言。例如,Java中的類別是根據需要載入的,甚至有些是透過網路取得的。

第二節:Java發展史

  1. 1991年Sun公司準備開發一種類似有線電視轉換盒的設備,專案命名為:Green。程式碼短小緊湊且與平台無關,根據Pascal語言設計出一種虛擬的機器生成中間代碼的可移植性語言,即Java虛擬機

    #
  2. 1994年Green專案(First Pascal公司)解散

  3. 1995年5月23日Java在SunWorld上得到演示,偉大的Java語言誕生

  4. 1996年初Sun公司發布Java第一個版本,Java1.0版本卻不能實際在開發中應用

  5. 1998年12月發布Java1.2版本(標準版-J2SE-JavaSE),此版本更接近Java的一次編寫隨處運行理念,三天后發布(微型版-J2ME-JavaME)和(企業版-J2EE-JavaEE)

  6. #2000年發布Java1.3

  7. #2002年發布Java1.4

  8. #2004年Java對語言做出了重大的改進,可以描述是另一個重大里程碑,並正式命名為Java5.0版本,並增加泛型、foreach循環、枚舉等概念

  9. #2006年發布Java 6 版本

  10. 2009年Sun公司曾經一度輝煌的日不落帝國終於淪陷,被Oracle收購之後Java進入一段停滯期

  11. #2011年發布Java 7 版本

  12. #2014年發布Java 8 版本

#第三節:Java開發環境建構

  • #JDK(Java Development Kit):撰寫Java程式的程式設計師使用的軟體

  • JRE:執行Java程式所使用的軟體

  • IDE:整合開發環境如:eclipse、idea等

#  JDK下載位址:。注意:安裝預設路徑是Program Files下面,最好把路徑換掉或把空格換掉,以避免不必要的麻煩。

  目錄結構:


    • bin:編譯器與工具

    • db:Java開發的關係型資料庫檔案

    • include:用於編譯本機方法的檔案

    • javafx-src:JavaFX腳本是一種宣告式、靜態類型程式語言

    • jre:Java執行環境檔案

    • #lib:類別庫檔案

    • #src:類別庫來源檔案

#  環境變數設定:

###################################### ###  JAVA_HOME:D:\Java\jdk1.8.0_31 它指向jdk的安裝目錄,Eclipse/NetBeans/Tomcat等軟體就是透過搜尋JAVA_HOME變數來找到並使用安裝好的jdk。 ############  PATH:%JAVA_HOME%\bin;  作用是指定命令搜尋路徑,在命令列下面執行指令如javac編譯java程式時,它會到PATH變數所指定的路徑中尋找是否能找到對應的命令程式。我們需要把jdk安裝目錄下的bin目錄增加到現有的PATH變數中,bin目錄包含經常要用到的可執行檔如javac/java/javadoc等待,設定PATH變數後,就可以在任何目錄下執行javac/java等工具了。 ############  CLASSPATH:.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar 作用是指定類別搜尋路徑,要使用已經編寫好的類,前提當然是能夠找到它們了,JVM就是透過CLASSPATH來尋找類別的。我們需要把jdk安裝目錄下的lib子目錄中的dt.jar和tools.jar設定到CLASSPATH中,當然,目前目錄「.」也必須加入到這個變數中。 ############  環境變數驗證:######

  CMD驗證:輸入Java -version 然後回車控制台輸出jdk版本號說明安裝成功。

  新HelloWorld.java文件,進入對應目錄輸入javac HelloWorld.java 然後回車,然後輸入java HelloWorld 然後回車控制台輸出Hello World 說明環境變數配置成功。

  註:javac程式是Java的編譯器,它會將HelloWorld.Java編譯成HelloWorld.class檔案並傳送到Java虛擬機,虛擬機執行編譯器放在class檔案中的字節碼。

  註:編譯時需要提供待編譯的檔案需要字尾名即:HelloWorld.java,而執行時只需要製定類別名稱就可以了,不需要帶後綴即:HelloWorld 。

以上是Java概述+環境搭建的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Java平台是否獨立,如果如何?Java平台是否獨立,如果如何?May 09, 2025 am 12:11 AM

Java是平台獨立的,因為其"一次編寫,到處運行"的設計理念,依賴於Java虛擬機(JVM)和字節碼。 1)Java代碼編譯成字節碼,由JVM解釋或即時編譯在本地運行。 2)需要注意庫依賴、性能差異和環境配置。 3)使用標準庫、跨平台測試和版本管理是確保平台獨立性的最佳實踐。

關於Java平台獨立性的真相:真的那麼簡單嗎?關於Java平台獨立性的真相:真的那麼簡單嗎?May 09, 2025 am 12:10 AM

Java'splatFormIndenceIsnotsimple; itinvolvesComplexities.1)jvmcompatiblemustbebeeniblemustbeensuredacrossplatforms.2)Nativelibrariesandsystemcallsneedcarefulhandling.3)

Java平台獨立性:Web應用程序的優勢Java平台獨立性:Web應用程序的優勢May 09, 2025 am 12:08 AM

Java'splatformindependencebenefitswebapplicationsbyallowingcodetorunonanysystemwithaJVM,simplifyingdeploymentandscaling.Itenables:1)easydeploymentacrossdifferentservers,2)seamlessscalingacrosscloudplatforms,and3)consistentdevelopmenttodeploymentproce

JVM解釋:Java虛擬機的綜合指南JVM解釋:Java虛擬機的綜合指南May 09, 2025 am 12:04 AM

thejvmistheruntimeenvorment forexecutingjavabytecode,Cocucialforjava的“ WriteOnce,RunanyWhere”能力

Java的主要功能:為什麼它仍然是頂級編程語言Java的主要功能:為什麼它仍然是頂級編程語言May 09, 2025 am 12:04 AM

JavaremainsatopchoicefordevelopersduetoitsplatFormentence,對象與方向設計,強度,自動化的MememoryManagement和ComprechensivestAndArdArdArdLibrary

Java平台獨立性:這對開發人員意味著什麼?Java平台獨立性:這對開發人員意味著什麼?May 08, 2025 am 12:27 AM

Java'splatFormIndependecemeansDeveloperScanWriteCeandeCeandOnanyDeviceWithouTrecompOlding.thisAcachivedThroughThroughTheroughThejavavirtualmachine(JVM),WhaterslatesbyTecodeDecodeOdeIntComenthendions,允許univerniverSaliversalComplatibilityAcrossplatss.allospplats.s.howevss.howev

如何為第一次使用設置JVM?如何為第一次使用設置JVM?May 08, 2025 am 12:21 AM

要設置JVM,需按以下步驟進行:1)下載並安裝JDK,2)設置環境變量,3)驗證安裝,4)設置IDE,5)測試運行程序。設置JVM不僅僅是讓其工作,還包括優化內存分配、垃圾收集、性能調優和錯誤處理,以確保最佳運行效果。

如何查看產品的Java平台獨立性?如何查看產品的Java平台獨立性?May 08, 2025 am 12:12 AM

toensurejavaplatFormIntence,lofterTheSeSteps:1)compileAndRunyOpplicationOnmultPlatFormSusiseDifferenToSandjvmversions.2)upureizeci/cdppipipelinelikeinkinslikejenkinsorgithikejenkinsorgithikejenkinsorgithikejenkinsorgithike forautomatecross-plateftestesteftestesting.3)

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版