Java是一門純粹的面向對象的高級的平台無關的編程語言
官網介紹:
了解 Java 技術 https://www.java.com/zh_CN/about/
推薦詞條:
https://zh.wikipedia.org/wiki/Java
https://zh.wikipedia.org/wiki/Java%E7%89%88%E6%9C%AC%E6%AD%B7%E5%8F%B2
歷史版本:
學習任何事務之前,最好的方式之一就是了解它的歷史和發展軌跡,有助於你從宏觀上把控她
所以學習之前最好還是多google 一些非技術性的介紹.
計算機編程語言,作為語言
必然有他可以識別的詞匯--關鍵字和語義
必然有他說話的方式--語法
這是最基本的
然后還會有它運行的方式,運行的載體
作為額外的禮物,還會有一系列的封裝好的API接口
另外還會有基於解決方案的技術體系或者規范限制
關鍵字是完成語句的基本元素,沒有詞匯就沒辦法完整的說出來一句話
每種編程語言都可以解決計算機世界里面絕大多數問題
但是並不意味着他們都是合適的選擇
java也不例外,他有自己擅長的地方,也有不閃亮的地方
計算機軟件領域有各種各樣的問題,但是大多數又都是通用的
比如實現一個快速排序,核心是算法
C還是C++還是Java都是表現形式
所以換一個角度思考問題:
這些絕大多數的需要被解決的問題是已知的
注意,我指的是目前需求應用場景中的大多數問題
java語言,不過是用java的方式去解決這些問題而已
用java的語調,用java的方言去描繪這件事情
關鍵字的集合構成了所有的語句集合
所有的語句集合又按照不同的組合構成了特性的集合
特性的集合就構成了java解決問題邏輯的集合
而這些特性的集合具化出來就是API和規范
所以想要入門java
至少需要掌握關鍵字,語法,特性,常用特性api
java語言具有平台無關(跨平台)的特性
平台無關的根本是平台無關的字節碼(Class文件格式)以及平台相關的虛擬機
理解了這句話就可以理解java的跨平台性了
所有的java代碼都會翻譯成平台無關,語言無關的字節碼文件
平台相關的虛擬機執行字節碼文件,而且,虛擬機並不需要應用程序員涉足
JDK
可以把 java程序設計語言/java虛擬機/java API類庫
三部分統稱為JDK Java Development Kit java開發工具包
提供給Java開發人員使用的,其中包含了java的開發工具,也包括了JRE。所以安裝了JDK,就不用在單獨安裝JRE了
JRE
JRE是Java Runtime Environment java運行環境
包括Java虛擬機(JVM Java Virtual Machine)和Java程序所需的核心類庫等,如果想要運行一個開發好的Java程序,計算機中只需要安裝JRE即可。
java程序HelloWorld
第一步就是下載安裝JDK /設置Path路徑 / classpath已經可以不用設置了
jdk下載路徑
http://www.oracle.com/technetwork/java/javase/downloads/index.html
JDK源文件
bin:存放各種工具命令
jre :JRE
db: javaDB
lib: 是JDK工具用到的類庫及其他文件。
src.zip: 源代碼
include: 包含C語言頭文件
SE8之前基本如此
10之后變化挺大
JDK所包含的工具
javac:編譯器,將后綴名為.java的源代碼編譯成后綴名為“.class”的字節碼
java:運行工具,運行.class的字節碼
jar:打包工具,將相關的類文件打包成一個文件
javadoc:文檔生成器,從源碼注釋中提取文檔,注釋需匹配規范
jdb debugger:調試工具
jps:顯示當前java程序運行的進程狀態
javap:反編譯程序
appletviewer:運行和調試applet程序的工具,不需要使用瀏覽器
javah:從Java類生成C頭文件和C源文件。這些文件提供了連接膠合,使Java和C代碼可進行交互。
javaws:運行JNLP程序
extcheck:一個檢測jar包沖突的工具
apt:注釋處理工具[3]
jhat:java堆分析工具
jstack:棧跟蹤程序
jstat:JVM檢測統計工具
jstatd:jstat守護進程
jinfo:獲取正在運行或崩潰的java程序配置信息
jmap:獲取java進程內存映射信息
idlj:IDL-to-Java編譯器。將IDL語言轉化為java文件[4]
policytool:一個GUI的策略文件創建和管理工具
jrunscript:命令行腳本運行
Path 路徑
path(環境變量)是dos以前的內部命令,windows繼續沿用至今。
用作運行某個命令的時候,本地查找不到某個命令或文件,會到這個聲明的目錄中去查找。
配置path可以使我們的jdk中的可執行命令,在除了bin以外的地方執行
在dos命令行中敲入javac,出現錯誤提示表明沒有配置好。
Classpath 類路徑
顧名思義,也即是查找類的路徑 jdk5 開始會在當前路徑以及JDK的lib目錄下查找
可以在環境變量中設置
也可以編譯時制定設置 javac -classpath classpath1;classpath2...
也可以在cmd 下臨時設置
l臨時配置方式:通過dos命令中set命令完成
•set :用於查看本機的所有環境變量的信息。
•set 變量名 :查看具體一個環境變量的值。
•set 變量名=:清空一個環境變量的值。
•set 變量名=具體值 :給指定變量定義具體值。
想要在原有環境變量值基礎上添加新值呢?
•首先,通過%變量名%操作符獲取到原有環境變量的值。
•然后加上新值后在定義給該變量名即可
•舉例:給path環境變量加入新值
•set path=新值;%path%
l注意:這種配置方式只在當前dos窗口有效。窗口關閉,配置消失。
classpath同理 ,因為他們都是環境變量 path 和classpath都是針對系統來設置的
第一個java程序代碼:
控制台執行java 流程
常用DOS命令
•dir(directory):列出當前目錄下的文件以及文件夾
•md (make directory) : 創建目錄
•rd (remove directory): 刪除目錄
•cd (change directory)改變指定目錄(進入指定目錄)
•cd.. : 退回到上一級目錄
•cd\: 退回到根目錄
•del (delete): 刪除文件,刪除一堆后綴名一樣的文件*.txt
•exit : 退出dos命令行
•cls : (clear screen)清屏