JavaSE學習總結(一)——Java基礎


一、Java是什么

Java 是由 Sun Microsystems 在 1995 年首先發布的編程語言和計算平台。Java 是一項用於開發應用程序的技術,可以讓 Web 變得更有意思和更實用。有許多應用程序和 Web 站點只有在安裝 Java 后才能正常工作,而且這樣的應用程序和 Web 站點日益增多。Java 快速、安全、可靠。從筆記本電腦到數據中心,從游戲控制台到科學超級計算機,從手機到互聯網,Java 無處不在!

java是當前最流行,應用最廣泛的編程語言。點擊查看tiobe排行

1.2、Java相關網站

Oracle英文:https://www.oracle.com/index.html

Oracle中文:http://www.oracle.com/cn/index.html

Java中文:https://www.java.com/zh_CN/

1.3、發展歷史

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)編譯器。

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.3、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正式版。

1.4、Java組成

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能做什么

Java可以編寫桌面應用程序(C/S Client/Server)、Web應用程序(B/S Browser/Server)、分布式系統和嵌入式系統應用程序等。Java最主要的作用是為各種應用提供強大的后台服務。

2.1、開發面向Internet的B/S結構應用程序

淘寶網、阿里巴巴、易趣網、中國移動網上營業廳

2.2、開發面向移動端的手機應用程序 

Android,各種Android下的App

2.3、開發面向桌面的C/S應用程序 

銀行軟件、商場結算軟件、QQ 、飛信

三、Java語言的特點

3.1、簡單

Java語言是一種面向對象的語言,它通過提供最基本的方法來完成指定的任務,只需理解一些基本的概念,就可以用它編寫出適合於各種情況的應用程序。 Java略去了運算符重載、多重繼承等模糊的概念,並且通過實現自動垃圾收集大大簡化了程序設計者的內存管理工作。

3.2、純面向對象

Java語言的設計集中於對象及其接口,它提供了簡單的類機制以及動態的接口模型。對象中封裝了它的狀態變量以及相應的方法,實現了模塊化和信息隱藏 ;而類則提供了一類對象的原型,並且通過繼承機制,子類可以使用父類所提供的方法,實現了代碼的復用。

3.3、分布式

Java是面向網絡的語言。通過它提供的類庫可以處理 TCP/IP協議,用戶可以通過 URL地址在網絡上很方便地訪問其它對象。

3.4、健壯

Java在編譯和運行程序時,都要對可能出現的問題進行檢查,以消除錯誤的產生。它提供自動垃圾收集來進行內存管理,防止程序員在管理內存時容易產生的錯誤。通過集成的面向對象的例外處理機制,在編譯時,Java提示出可能出現但未被處理的例外。另外,Java在編譯時還可捕獲類型聲明中的許多常見錯誤,防止動態運行時出現不匹配問題。

3.5、安全性

用於網絡、分布環境下的 Java必須要防止非法的入侵。 Java不支持指針,一切對內存的訪問都必須通過對象的實例變量來實現,這樣就防止程序員使用“特洛伊 ”木馬等欺騙手段訪問對象的私有成員,同時也避免了指針操作中容易產生的錯誤。Linux

3.6、體系結構中立

Java解釋器生成與體系結構無關的字節碼指令,只要安裝了 Java運行時系統,Java程序就可在任意的處理器上運行。這些字節碼指令對應於 Java虛擬機中的表示,Java解釋器得到字節碼后,對它進行轉換,使之能夠在不同的平台運行。

3.7、可移植性

與平台無關的特性使 Java程序可以方便地被移植到網絡上的不同機器。同時,Java的類庫中也實現了與不同平台的接口,使這些類庫可以移植。另外,Java編譯器是由 Java語言實現的,Java運行時系統由標准C實現,這使得Java 系統本身也具有可移植性。

3.8、解釋執行

Java解釋器直接對Java的字節碼進行解釋執行。字節碼本身攜帶了許多編譯時信息,使得連接過程更加簡單。

3.9、高性能

和其它解釋執行的語言(例如BASIC)不同,Java字節碼的設計使之能很容易地直接轉換成對應於特定CPU的機器碼,從而得到較高的性能。

3.10、多線程

多線程機制使應用程序能夠並行執行,而且同步機制保證了對共享數據的正確操作。通過使用多線程,程序設計者可以分別用不同的線程完成特定的行為,而不需要采用全局的事件循環機制,這樣就很容易地實現網絡上的實時交互行為。

3.11、動態性

Java的設計使它適合於一個不斷發展的環境。在類庫中可以自由地加入新的方法和實例變量而不會影響用戶程序的執行。另外, Java通過接口來支持多重繼承,使之比嚴格的類繼承具有更靈活的方式和擴展性。

3.12、開源

3.13、免費

四、第一個Java程序

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)

4.1、安裝JDK並安裝

1)、下載JDK

地址:http://www.oracle.com/cn

http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-windows-x64.exe

開始->運行->cmd->java -version 如果可以看到如下界面,說明已安裝成功

java -version用於查看java版本

4.2、配置環境變量

如果使用安裝包,默認會添加環境變量,如果使用的是綠色版本的JDK則需要手動配置環境變量

4.2.1、手動添加

右鍵點擊我的電腦->屬性->高級->環境變量,修改下面系統變量那個框里的值就行了。

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(注意最前面有一個點)

4.2.2、批處理添加一 

新建一個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

4.2.3、批處理添加二 

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、編輯源代碼

4.3.1、在DOS下創建一個源代碼文件

4.3.2、直接在windows下創建一個源代碼文件

在目標位置創建一個文本文件,重命令為Hello.java

//定義一個名為Hello的類
public class Hello{
  //定義主方法,程序入口
  public static void main(String[] args){
     //向控制台輸出字符信息並換行
     System.out.println("Hello Java");
  }
}

注意:

a)、public類名要與文件名一致

b)、嚴格區分大小寫

c)、一行語句結束需要以分號界定

4.4、編譯運行

 

命名用javac 文件名可以編譯源代碼為字節碼,運行編譯好的字節碼:

4.5、運行機制解析

 

java源文件的后綴名為:.java,公有的類名與文件名相同

編譯后的后綴名為:.class,也稱為字節碼文件

五、使用IDE開發Java程序

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.1、請不要使用IDE,創建一個Java程序,編譯並運行,輸出1-100。

7.2、請使用IDEA集成開發工具創建一個Java程序,輸入n,輸出1到n的和。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM