【狂神說Java學習筆記】---初識Java
1. Java誕生
-
1972年C語言誕生
-
1982年C++誕生
-
1995年Java誕生
C語言貼近品牌,執行極快,效率極高。用於開發作業系統,編譯器,資料庫,網路系統等。擁有強大的指標管理。
C++新增一些面向物件的功能,相容C。用於圖形領域、遊戲等。
Java是一門面向物件的語言,語法有點像C,沒有指標和記憶體管理。真正的可移植性,編寫一次,到處執行。擁有高質量的類庫。
Bill Gates:這是迄今為止設計的最好的語言!
Java以虛擬機器的方式實現了可以指的特性,即JVM
-
Java 2 標準版(J2SE):佔領桌面
-
Java 2 移動版(J2ME):佔領手機
-
Java 2 企業版(J2EE):佔領伺服器
Java三高:高可用 高效能 高併發
基於Java開發了巨多的平臺,系統,工具。
-
構架工具:Ant,Maven,Jekins
-
應用伺服器:Tomcat,Jetty,Jboos,Websphere,Weblogic
-
Web開發:Struts,Spring,Hibernate,myBatis
-
開發工具:Eclipse,Netbean,intellij idea,jbuilder
-
......
2006:Hadoop(大資料領域)
2008:Android(手機端)
2. Java特性和優勢
-
簡單性
-
面向物件
-
可移植性
-
高效能
-
分散式
-
動態性
-
多執行緒
-
安全性
-
健壯性
-
......
3. Java三大版本
Write Once、Run Anywhere
-
JavaSE :標準版(桌面程式,控制檯開發......)
-
JavaME :嵌入式開發(手機,小家電)
-
JavaEE :E企業級開發(Web端,伺服器端開發)
4. JDK、JRE、JVM
-
JDK :Java Development Kit
-
JRE :Java Runtime Environment
-
Jvm :Java Virtual Machine
JDK包含jRE包含JVM
5. Java開發環境搭建
解除安裝JDK
-
刪除Java安裝目錄
-
刪除Java環境變數下JAVA_HOME
-
刪除path下關於Java的目錄
-
CMD視窗輸入java-version,提示::'java-version' 不是內部或外部命令,也不是可執行的程式
安裝JDK
-
百度搜索JDK8,找到下載地址。
-
下載電腦對應的版本
-
同意協議
-
雙擊安裝JDK
-
記住安裝路徑
-
配置環境變數
-
我的電腦-右鍵-屬性
-
高階系統設定-環境變數-系統變數-新建:
變數名:JAVA_HOME
變數值:JDK安裝路徑
-
配置path變數
-
高階系統設定-環境變數-系統變數-path-新建輸入:%JAVA_HOME%\bin
-
高階系統設定-環境變數-系統變數-path-新建輸入:%JAVA_HOME%\jre\bin
-
-
-
測試JDK是否安裝成功
-
開啟CMD
-
輸入Java -version
JDK目錄都有哪些東西
-
bin:一些可執行的程式
-
include:引用的C語言的標頭檔案,因為Jdk使用從C/C++編寫的
-
jre:Java執行環境
-
lib:Java開發需要用到的一些庫檔案
-
src:資原始檔
安裝Notepad++
-
-
官網下載電腦對應的安裝版本
-
雙擊安裝檔案,選擇安裝路徑。等進度條走完即可
6. 第一個程式
-
新建一個資料夾存放程式碼
-
新建一個Java檔案
-
檔名字尾為.java
-
HelloWorld.java
-
注意:系統可能沒有現在後綴名,需要手動開啟
-
-
編寫程式碼
public class HelloWorld{
public static void main(String[] args){
System.out.print("HelloWorld");
}
}
4.編譯javac java檔案,會生成一個class檔案
5.執行class檔案,Java class檔案
可能會出現的情況
-
每個單詞大小寫不能出現問題,Java是大小寫敏感的
-
儘量使用英文
-
檔名和類名必須保證一致,並且首字母大寫
-
符號使用了中文
7.編譯型和解釋型
以下內容轉載而來
編譯型:把做好的源程式全部編譯成二進位制程式碼的可執行程式。然後,可直接執行這個程式。
編譯型語言,執行速度快、效率高;依靠編譯器、跨平臺性差些。
解釋型:把做好的源程式翻譯一句,然後執行一句,直至結束!
解釋型語言,執行速度慢、效率低;依靠直譯器、跨平臺性好。
(Java執行流程)
(Java虛擬機器)
個人認為,java是解釋型的語言,因為雖然java也需要編譯,編譯成.class檔案,但是並不是機器可以識別的語言,而是位元組碼,最終還是需要 jvm的解釋,才能在各個平臺執行,這同時也是java跨平臺的原因。所以可是說java即是編譯型的,也是解釋型,但是假如非要歸類的話,從概念上的定義,恐怕java應該歸到解釋型的語言中。