Java 是由 Sun Microsystems 在 1995 年首先發布的編程語言和計算平臺。Java 是一項用於開發應用程序的技術,可讓 Web 變得更有意思和更實用。有許多應用程序和 Web 站點只有在安裝 Java 後才能正常工做,並且這樣的應用程序和 Web 站點日益增多。Java 快速、安全、可靠。從筆記本電腦到數據中心,從遊戲控制檯到科學超級計算機,從手機到互聯網,Java 無處不在!html
java是當前最流行,應用最普遍的編程語言。點擊查看tiobe排行java
Oracle英文:https://www.oracle.com/index.htmllinux
Oracle中文:http://www.oracle.com/cn/index.htmlandroid
Java中文:https://www.java.com/zh_CN/ios
20世紀90年代,硬件領域出現了單片式計算機系統,根據嵌入式軟件的要求,對C++進行了改造,去除了留在C++的一些不太實用及影響安全的成分,並結合嵌入式系統的實時性要求,開發了一種稱爲Oak的面嚮對象語言。程序員
1995年,並將Oak改名爲Java。互聯網的蓬勃發展給了Oak機會,Oak也是一種精簡的語言,程序很是小,適合在網絡上傳輸。編程
1996年1月,Sun公司發佈了Java的第一個開發工具包(JDK 1.0),這是Java發展歷程中的重要里程碑,標誌着Java成爲一種獨立的開發工具。9月,約8.3萬個網頁應用了Java技術來製做。10月,Sun公司發佈了Java平臺的第一個即時(JIT)編譯器。windows
1997年2月,JDK 1.1面世,在隨後的3周時間裏,達到了22萬次的下載量。瀏覽器
1999年6月,Sun公司發佈了第二代Java平臺(簡稱爲Java2)。安全
1999年4月27日,HotSpot虛擬機發布。HotSpot虛擬機發布時是做爲JDK 1.2的附加程序提供的,後來它成爲了JDK 1.3及以後全部版本的Sun JDK的默認虛擬機。
2000年5月,JDK1.三、JDK1.4和J2SE1.3相繼發佈,幾周後其得到了Apple公司Mac OS X的工業標準的支持。
2001年9月24日,J2EE1.3發佈。
2002年2月26日,J2SE1.4發佈。
2004年9月30日,J2SE1.5發佈,成爲Java語言發展史上的又一里程碑。
2005年6月,在Java One大會上,Sun公司發佈了Java SE 6。
2006年11月13日,Java技術的發明者Sun公司宣佈,將Java技術做爲免費軟件對外發布。
從2007年3月起,全世界全部的開發人員都可對Java源代碼進行修改
2009年,甲骨文公司宣佈收購Sun。
2010年,Java編程語言的共同創始人之一詹姆斯·高斯林從Oracle公司辭職。
2011年,Java7正式發佈。
2014年,甲骨文公司發佈了Java8正式版。
JavaME(Java Micro Edition,Java2平臺的微型版),應用於移動、無線及有限資源的環境
JavaSE(Java Standard Edition,Java 2平臺的標準版),應用於桌面環境,它是其它Java平臺的基礎 C/S
JavaEE(Java Enterprise Edition,Java 2平臺的企業版),應用於基於Java的應用服務器 B/S
JavaSE平臺:
Java能夠編寫桌面應用程序(C/S Client/Server)、Web應用程序(B/S Browser/Server)、分佈式系統和嵌入式系統應用程序等。Java最主要的做用是爲各類應用提供強大的後臺服務。
2.一、開發面向Internet的B/S結構應用程序
淘寶網、阿里巴巴、易趣網、中國移動網上營業廳
2.二、開發面向移動端的手機應用程序
Android,各類Android下的App
2.三、開發面向桌面的C/S應用程序
銀行軟件、商場結算軟件、QQ 、飛信
3.一、簡單
Java語言是一種面向對象的語言,它經過提供最基本的方法來完成指定的任務,只需理解一些基本的概念,就能夠用它編寫出適合於各類狀況的應用程序。 Java略去了運算符重載、多重繼承等模糊的概念,而且經過實現自動垃圾收集大大簡化了程序設計者的內存管理工做。
3.二、純面向對象
Java語言的設計集中於對象及其接口,它提供了簡單的類機制以及動態的接口模型。對象中封裝了它的狀態變量以及相應的方法,實現了模塊化和信息隱藏 ;而類則提供了一類對象的原型,而且經過繼承機制,子類可使用父類所提供的方法,實現了代碼的複用。
3.三、分佈式
Java是面向網絡的語言。經過它提供的類庫能夠處理 TCP/IP協議,用戶能夠經過 URL地址在網絡上很方便地訪問其它對象。
3.四、健壯
Java在編譯和運行程序時,都要對可能出現的問題進行檢查,以消除錯誤的產生。它提供自動垃圾收集來進行內存管理,防止程序員在管理內存時容易產生的錯誤。經過集成的面向對象的例外處理機制,在編譯時,Java提示出可能出現但未被處理的例外。另外,Java在編譯時還可捕獲類型聲明中的許多常見錯誤,防止動態運行時出現不匹配問題。
3.五、安全性
用於網絡、分佈環境下的 Java必需要防止非法的入侵。 Java不支持指針,一切對內存的訪問都必須經過對象的實例變量來實現,這樣就防止程序員使用「特洛伊 」木馬等欺騙手段訪問對象的私有成員,同時也避免了指針操做中容易產生的錯誤。Linux
3.六、體系結構中立
Java解釋器生成與體系結構無關的字節碼指令,只要安裝了 Java運行時系統,Java程序就可在任意的處理器上運行。這些字節碼指令對應於 Java虛擬機中的表示,Java解釋器獲得字節碼後,對它進行轉換,使之可以在不一樣的平臺運行。
3.七、可移植性
與平臺無關的特性使 Java程序能夠方便地被移植到網絡上的不一樣機器。同時,Java的類庫中也實現了與不一樣平臺的接口,使這些類庫能夠移植。另外,Java編譯器是由 Java語言實現的,Java運行時系統由標準C實現,這使得Java 系統自己也具備可移植性。
3.八、解釋執行
Java解釋器直接對Java的字節碼進行解釋執行。字節碼自己攜帶了許多編譯時信息,使得鏈接過程更加簡單。
3.九、高性能
和其它解釋執行的語言(例如BASIC)不一樣,Java字節碼的設計使之能很容易地直接轉換成對應於特定CPU的機器碼,從而獲得較高的性能。
3.十、多線程
多線程機制使應用程序可以並行執行,並且同步機制保證了對共享數據的正確操做。經過使用多線程,程序設計者能夠分別用不一樣的線程完成特定的行爲,而不須要採用全局的事件循環機制,這樣就很容易地實現網絡上的實時交互行爲。
3.十一、動態性
Java的設計使它適合於一個不斷髮展的環境。在類庫中能夠自由地加入新的方法和實例變量而不會影響用戶程序的執行。另外, Java經過接口來支持多重繼承,使之比嚴格的類繼承具備更靈活的方式和擴展性。
3.十二、開源
3.1三、免費
JDK (Java Development Kit)是 Java 語言的軟件開發工具包,主要用於移動設備、嵌入式設備上的java應用程序。JDK是整個java開發的核心,它包含了JAVA的運行環境,JAVA工具和JAVA基礎的類庫。
JRE(Java Runtime Environment,Java運行環境),運行JAVA程序所必須的環境的集合,包含JVM標準實現及Java核心類庫。
JRE爲Java Runtime Environment的簡稱,Java Runtime Environment(包括Java Plug-in)是Sun的產品,包括兩部分:Java Runtime Environment和Java Plug-in。JavaRuntimeEnvironment(JRE)是能夠在其上運行、測試和傳輸應用程序的Java平臺。它包括Java虛擬機(jvm)、Java核心類庫和支持文件。它不包含開發工具(JDK)--編譯器、調試器和其它工具。JRE須要輔助軟件--Java Plug-in--以便在瀏覽器中運行applet。
JVM是Java Virtual Machine(Java虛擬機)的縮寫,JVM是一種用於計算設備的規範,它是一個虛構出來的計算機,是經過在實際的計算機上仿真模擬各類計算機功能來實現的。平臺的不一樣主要體現硬件(x64,x32,mac,arm)與軟件(windows,linux,unix,ios,android)
1)、下載JDK
http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-windows-x64.exe
開始->運行->cmd->java -version 若是能夠看到以下界面,說明已安裝成功
java -version用於查看java版本
若是使用安裝包,默認會添加環境變量,若是使用的是綠色版本的JDK則須要手動配置環境變量
右鍵點擊個人電腦->屬性->高級->環境變量,修改下面系統變量那個框裏的值就好了。
a)、添加JAVA_HOME變量
JAVA_HOME是一個變量,一次定義能夠反覆引用,引用辦法%JAVA_HOME%
b)、在Path中增長內容
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
注意以分號隔開
c)、增長CLASSPATH
系統變量->新建CLASSPATH變量
變量值填寫.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一個點)
新建一個jdk.bat批處理文件,注意路徑不要空格與中文
@echo off rem TODO:設置java環境變量 rem 設置java的安裝路徑,可方便切換不一樣的版本 set javaPath=E:\java\program\jdk1.7.0_25\ rem 若是有的話,先刪除JAVA_HOME wmic ENVIRONMENT where "name='JAVA_HOME'" delete rem 若是有的話,先刪除ClASS_PATH wmic ENVIRONMENT where "name='CLASS_PATH'" delete rem 建立JAVA_HOME wmic ENVIRONMENT create name="JAVA_HOME",username="",VariableValue="%javaPath%" rem 建立CLASS_PATH wmic ENVIRONMENT create name="CLASS_PATH",username="",VariableValue=".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;" rem 在環境變量path中,剔除掉變量java_home中的字符,回顯剩下的字符串 call set xx=%%Path:%JAVA_HOME%=%% rem 將返回顯的字符從新賦值到path中 wmic ENVIRONMENT where "name='Path' and username=''" set VariableValue=%xx% pause
echo. 運行本文件前請將本放置在java_home目錄下,如 C:\Program Files\Java\jdk1.7.0 @reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v JAVA_HOME /t reg_sz /d "%~dp0 @reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v CLASSPATH /t reg_sz /d ".;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar;" /f @reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v path /t reg_expand_sz /d "%path%;%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin" /f pause
*運行本文件前請將本放置在java_home目錄下,如 C:\Program Files\Java\jdk1.7.0
4.3.一、在DOS下建立一個源代碼文件
4.3.二、直接在windows下建立一個源代碼文件
在目標位置建立一個文本文件,重命令爲Hello.java
//定義一個名爲Hello的類 public class Hello{ //定義主方法,程序入口 public static void main(String[] args){ //向控制檯輸出字符信息並換行 System.out.println("Hello Java"); } }
注意:
a)、public類名要與文件名一致
b)、嚴格區分大小寫
c)、一行語句結束須要以分號界定
命名用javac 文件名能夠編譯源代碼爲字節碼,運行編譯好的字節碼:
java源文件的後綴名爲:.java,公有的類名與文件名相同
編譯後的後綴名爲:.class,也稱爲字節碼文件
java集成開發環境(IDE)有許多如:Eclipse、MyEclipse、IDEA、NetBeans、Jdeveloper等
Eclipse:當前使用人數最多,開源,免費,之前是IBM的後來捐給了Apache
MyEclipse:Eclipse的演化版本,功能比Eclipse強大,但收費
IDEA:IntelliJ IDEA比Eclipse的好評多,收費,Android開發如今使用該IDE
Eclipse下載地址:https://www.eclipse.org/
方法二:(推薦)
打開:http://www.eclipse.org/downloads/eclipse-packages/
點擊64位後:
能夠選擇國內的鏡像(Mirror)
直接將壓縮包放到一個沒有中文,沒有空格,沒有特殊字符的目標下
打開eclipse
最好發送快捷方式到桌面,避免每次打開文件夾
JDK8網盤下載:http://pan.baidu.com/s/1nuSuIKT
JDK8官網下載:http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-windows-x64.exe
Eclipse下載:http://pan.baidu.com/s/1c2koakg (綠色版)
JDK7官方下載:http://www.oracle.com/technetwork/cn/java/javase/downloads/java-se-jdk-7-download-432154-zhs.html
視頻下載:https://pan.baidu.com/s/1nuTIe7n 密碼: 374d
B站在線看:http://www.bilibili.com/video/av9219224/
7.一、請不要使用IDE,建立一個Java程序,編譯並運行,輸出1-100。
7.二、請使用IDEA集成開發工具建立一個Java程序,輸入n,輸出1到n的和。