Java是一門純粹的面向對象的高級的平臺無關的編程語言html
官網介紹: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%B2windows
歷史版本:api
學習任何事務以前,最好的方式之一就是了解它的歷史和發展軌跡,有助於你從宏觀上把控她瀏覽器
因此學習以前最好仍是多google 一些非技術性的介紹.oracle
計算機編程語言,做爲語言app
必然有他能夠識別的詞彙--關鍵字和語義
必然有他說話的方式--語法
這是最基本的
而後還會有它運行的方式,運行的載體
做爲額外的禮物,還會有一系列的封裝好的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)清屏