Java 概述及安裝使用
Java是什麽
概述
java是一種面向對象編程語言,不過經過多年的發展,現在已經演變為了一套強大的技術體系。Java設計者們將Java劃分為3種結構獨立但卻彼此依賴的技術體系分支,它們分別對應著不同的規範集合和組件:
- Java SE(標準版):主要活躍在桌面領域,主要包含了Java API組件;
- Java EE(企業版):主要活躍在企業級領域,除了Java API組件外,還有Web組件、事務組件、分布式組件、EJB組件、消息組件等等,綜合這些技術,開發人員完全可以構建出一個具備高性能、結構嚴謹的企業級應用,並且Java EE 也是用於構建SOA(面向服務架構)的首選平臺;
- Java ME(精簡版)
:主要活躍在嵌入式領域,精簡是因為它僅保留了Java API中的部分組件以及適應設備的一些特有組件;
jdk主要功能變更
- 1.5
- 泛型
- 增強循環,可使用叠代方式
- 自動裝箱拆箱
- 類型安全的枚舉
- 可變參數
- 元數據(註解)
- 1.6
- 繼承Web Services
- 腳本語言支持
- 可拔插註解
- Java Compiler API
- JDBC 4.0API
- 1.7
- switch中使用字符串
- 在創建泛型對象時應用類型推斷
- 在一個語句塊中捕獲多種異常
- 支持動態語言
- 數值類型可以用二進制字符串表示
- null值自動處理
- 1.8
- Lambda表達式(允許把函數作為一個方法的參數)
- 方法引用(與lambda聯合使用,直接引用已有Java類的方法或構造器)
- 接口有一個默認的實現方法
- Stream API
- Date Time API(加強對日期與時間的處理)
- Optional(用於解決空指針異常)
- Nashorn,JavaScript引擎
- 詳細參考
- 1.9
- 模塊系統(包的容器)
- JShell(交互式編程環境)
- HTTP2客戶端
- 改進的Javadoc
- 多版本兼容JAR包
- 集合工廠方法
- 私有接口方法(可以使用 private 訪問修飾符在接口中編寫私有方法)
- 進程API
- 改進鉆石操作符
- 多分辨率圖片API
- 輕量級JSON API
- 響應式流
- 詳細參考
JVM、JRE、JDK
JVM:Java Virtual Machine,即Java虛擬機,java程序是運行在Java虛擬機上面的,不同平臺有自己的虛擬機,因此java代碼可以跨平臺使用;(JVM池子太深,先留坑)
JRE:Java Runtime Environment,即Java運行環境,包含了JVM和Java核心類庫,它只是運行環境,沒有任何開發工具;
JDK:Java Development Kit,即Java開發工具包,它包含了JRE、Java各種類庫以及工具。jdk和jre的bin目錄最明顯的區別就是:只有jdk文件下才有javac;
具體關系圖
為什麽用Java
Java的特點
簡單
- Java是C++的一個變種,但是摒棄了C++中復雜又容易引發程序錯誤的地方,如指針和內存管理;
- Java本身提供了豐富的類庫,簡化開發;
面向對象
- 支持靜態和動態風格的代碼繼承以及重用;
- Java還包括一個類的擴展集合,分別組成各種程序包
分布式
- Java包括一個支持HTTP和FTP等TCP/IP協議的子庫,因此Java程序可打開並訪問網絡上的對象,訪問方式與訪問本地文件系統幾乎相同;
健壯
- Java致力於檢查程序在編譯和運行時的錯誤,類型檢查能幫助檢查出許多早期出現的錯誤;
- Java自動操縱內存減少了內存出錯的可能性;
- Java實現了真數組,避免了覆蓋數據的可能;
安全
- 編譯時數據類型檢查和自動內存管理使代碼更健壯,減少內存損壞和漏洞;
- 字節碼驗證可確保代碼符合JVM規範並防止惡意代碼破壞運行時環境;
- 類加載器可防止不受信任的代碼幹擾其他Java程序的運行;
- 基於一個動態、可擴展、基於標準、可互操作的安全架構,內置加密、身份驗證授權、公共密鑰基礎架構等安全特性;
平臺無關性
- Java源代碼和字節碼與機器無關,因此字節碼文件能運行於不同的平臺,實現一次編譯,處處運行。
- 與機器有關的是JVM,JVM是建立在硬件和操作系統之上,實現Java字節碼代碼的解釋執行功能,提供不同平臺的接口;
其實Java真正強大的地方是因為有著眾多的技術擁護者和開源社區的支持,使Java無時不刻都保持著最充沛的體力與思維,驅動Java發展
Java的缺點
- 內存操作自動化限制;
- 解釋型語言,運行效率較低;
- 取消了指針操作,不夠其他語言那樣靈活方便;
怎麽使用Java
安裝與配置
Mac用戶看這個 -> Mac安裝Java)
- JDK使整個Java的核心,開始先-> 下載jdk;
- 下載安裝完成後需要配置環境變量:
- 此電腦→右鍵→屬性→高級系統設置→環境變量;
- 新建一個變量名為“JAVA_HOME”的系統變量,變量值為jdk安裝目錄(x:\xx\jdkxx);
- 新建一個變量名為“CLASSPATH”,變量值為“ %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar ”;
- 在Path系統變量中,添加“ %JAVA_HOME%\bin ”和“ %JAVA_HOME%\jre\bin ”這兩個系統變量
- 驗證安裝
- 保存後打開命令行窗口;
- 分別輸入java和javac,都正常顯示則代表成功安裝;
開發工具
開發Java通常使用兩種工具,選一個點擊進行安裝,當然也可以選擇其他IDE:
- Eclipse IDE
- InteliJ IDEA
第一個Java程序
1.打開代碼編輯器,復制以下代碼:
public class HelloWorld { /* 第一個Java程序 * 它將打印字符串 Hello World */ public static void main(String []args) { System.out.println("Hello World"); // 打印 Hello World } }
2.保存為HelloWorld.java文件;
3.打開cmd窗口,進入目標文件所在文件夾位置;
4.輸入 javac HelloWorld.java 進行編譯;
5.無誤後輸入 java HelloWorld 即可運行;
基本語法
註釋
行級註釋:// xxx
塊級註釋:/* xxx */
文檔註釋:/** xxx */
標識符
英文
數字
下劃線
美元符
標識符規則:
- 不能數字開頭
- 不能用關鍵字
- 遵循駝峰法則
- 盡量見名知意
數據類型
基本數據類型:
- 整數 —— byte、short、int、long
- 浮點數 —— float、double
- 字符 —— char
- 布爾型 —— boolean
引用數據類型:
- 數組
- 類(String也在其中)
- 接口
數據類型的轉換
根據字節數由小到大排序:
- byte ——占用1字節,取值:-128~127(2^7)
- short ——占用2字節,取值:-32768~32767(2^15)
- int ——占用4字節,取值:-2147483648~2147483647(2^31)
- float ——占用4字節,取值:-3.4e+38 ~ 3.4e+38
- long ——占用8字節,取值:-9223372036854774808~9223372036854774807(2^63)
- double ——占用8字節,取值:-1.7e+308 ~ 1.7e+308
顯式轉換(強轉):大範圍轉到小範圍,要在等號右邊加上類型
隱式轉換(自動):小範圍轉到大範圍
變量
變量和引用存儲在棧中
- 局部變量
- 類變量(靜態變量)
- 成員變量(非靜態變量)
常量
常量存儲在常量池中
- 整形常量
- 浮點數常量
- 字符型常量
- 布爾型常量
- 字符串常量
Java符號以及優先級
篇幅太長,引用其他大神博客進行參考
Java 概述及安裝使用