第1課 軟件開發(fā)基礎(chǔ)知識培訓(xùn)-Java語言概述_第1頁
第1課 軟件開發(fā)基礎(chǔ)知識培訓(xùn)-Java語言概述_第2頁
第1課 軟件開發(fā)基礎(chǔ)知識培訓(xùn)-Java語言概述_第3頁
第1課 軟件開發(fā)基礎(chǔ)知識培訓(xùn)-Java語言概述_第4頁
第1課 軟件開發(fā)基礎(chǔ)知識培訓(xùn)-Java語言概述_第5頁
已閱讀5頁,還剩44頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

課程概述軟件開發(fā)基礎(chǔ)知識培訓(xùn)第1課Java基礎(chǔ)培訓(xùn)講師:魏國生Email:weiguosheng@Java基礎(chǔ)知識圖解JAVA發(fā)展歷程JAVA環(huán)境搭建基礎(chǔ)程序設(shè)計(jì)數(shù)據(jù)類型流程控制運(yùn)算符數(shù)組面向?qū)ο缶幊填惡蛯ο髮傩苑椒ㄔO(shè)計(jì)模式接口三大特性應(yīng)用程序開發(fā)JDBC集合異常處理類庫多線程IO反射網(wǎng)絡(luò)Oracle/MySQLJAVA新特性Eclipse使用泛型枚舉裝箱/拆箱可變參數(shù)AnnotationJava基礎(chǔ)課程體系第1章Java語言概述第2章基本語法第3章面向?qū)ο缶幊痰?章高級類特性1第5章高級類特性2第6章異常處理第7章Java集合第8章泛型第9章注解&枚舉第10章IO第11章多線程第12章Java常用類第13章Java反射第14章網(wǎng)絡(luò)編程建議鍛煉“雙核”處理,邊聽講思考,邊做“筆記”紙上得來終覺淺,絕知此事要躬行!不要完全依賴于書和視頻建立行之有效的學(xué)習(xí)方法學(xué)習(xí)編程的捷徑--敲,狂敲學(xué)習(xí)編程的規(guī)范--加注釋代碼虐我千百遍,我視代碼如初戀第1章

Java語言概述JavaSE是學(xué)習(xí)JavaWeb、JavaEE以及Android開發(fā)的基石!本章內(nèi)容1.1基礎(chǔ)常識1.2Java語言概述1.3Java程序運(yùn)行機(jī)制及運(yùn)行過程1.4Java語言的環(huán)境搭建1.5開發(fā)體驗(yàn)—HelloWorld1.6小結(jié)第一個程序1.7常見問題及解決方法1.8注釋1.9JavaAPI文檔1.1基礎(chǔ)常識軟件開發(fā)軟件,即一系列按照特定順序組織的計(jì)算機(jī)數(shù)據(jù)和指令

的集合。有系統(tǒng)軟件和應(yīng)用軟件之分。人機(jī)交互方式圖形化界面(GraphicalUserInterfaceGUI)這種方

式簡單直觀,使用者易于接受,容易上手操作。命令行方式(CommandLineInterfaceCLI):需要

有一個控制臺,輸入特定的指令,讓計(jì)算機(jī)完成

一些操作。較為麻煩,需要記錄住一些命令。N·Wirth(尼克勞斯·維爾特):“算法+數(shù)據(jù)結(jié)構(gòu)=程序”常用的DOS命令dir:

列出當(dāng)前目錄下的文件以及文件夾md:

創(chuàng)建目錄rd:

刪除目錄cd:

進(jìn)入指定目錄cd..:退回到上一級目錄cd\:

退回到根目錄del:

刪除文件exit:

退出dos命令行1.1基礎(chǔ)常識1.1基礎(chǔ)常識什么是計(jì)算機(jī)語言語言:是人與人之間用于溝通的一種方式。例如:中國人與中國人用普通話溝通。而中國人要和英國人交流,就要學(xué)習(xí)英語。計(jì)算機(jī)語言:人與計(jì)算機(jī)交流的方式。

如果人要與計(jì)算機(jī)交流,那么就要學(xué)習(xí)計(jì)算機(jī)語言。

計(jì)算機(jī)語言有很多種,如:C,C++,Java,PHP等。1.2Java語言概述第一代語言打孔機(jī)——純機(jī)器語言第二代語言匯編語言第三代語言C、Pascal、Fortran面向過程的語言C++面向過程/面向?qū)ο驤ava跨平臺的純面向?qū)ο蟮恼Z言.NET跨語言的平臺Whyis

?TIOBEProgrammingCommunityIndexforFeb20161.從java語言的市場需求來看數(shù)據(jù)來源:TIOBE2.從java語言的誕生、特點(diǎn)說起java之父JamesGosling團(tuán)隊(duì)在開發(fā)”Green”項(xiàng)目時,發(fā)現(xiàn)C和C++缺少垃圾回收系統(tǒng),還有可移植的安全性、分布程序設(shè)計(jì)、和多線程功能。最后,他們想要一種易于移植到各種設(shè)備上的平臺。Java確實(shí)是從C語言和C++語言繼承了許多成份,甚至可以將Java看成是類C語言發(fā)展和衍生的產(chǎn)物。比如Java語言的變量聲明,操作符形式,參數(shù)傳遞,流程控制等方面和C語言、C++語言完全相同。但同時,Java是一個純粹的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,它繼承了C++語言面向?qū)ο蠹夹g(shù)的核心。Java舍棄了C語言中容易引起錯誤的指針(以引用取代)、運(yùn)算符重載(operatoroverloading)、多重繼承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的對象所占據(jù)的內(nèi)存空間。JDK1.5又引入了泛型編程(GenericProgramming)、類型安全的枚舉、不定長參數(shù)和自動裝/拆箱java語言的主要特性Java語言是易學(xué)的。Java語言的語法與C語言和C++語言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用Java。Java語言是強(qiáng)制面向?qū)ο蟮摹ava語言提供類、接口和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為implements)。Java語言是分布式的。Java語言支持Internet應(yīng)用的開發(fā),在基本的Java應(yīng)用編程接口中有一個網(wǎng)絡(luò)應(yīng)用編程接口(javanet),它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(遠(yuǎn)程方法激活)機(jī)制也是開發(fā)分布式應(yīng)用的重要手段。Java語言是健壯的。Java的強(qiáng)類型機(jī)制、異常處理、垃圾的自動收集等是Java程序健壯性的重要保證。對指針的丟棄是Java的明智選擇。java語言的主要特性Java語言是安全的。Java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java提供了一個安全機(jī)制以防惡意代碼的攻擊。如:安全防范機(jī)制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查。Java語言是體系結(jié)構(gòu)中立的。Java程序(后綴為java的文件)在Java平臺上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件),然后可以在實(shí)現(xiàn)這個Java平臺的任何系統(tǒng)中運(yùn)行。Java語言是解釋型的。如前所述,Java程序在Java平臺上被編譯為字節(jié)碼格式,然后可以在實(shí)現(xiàn)這個Java平臺的任何系統(tǒng)的解釋器中運(yùn)行。Java是性能略高的。與那些解釋型的高級腳本語言相比,Java的性能還是較優(yōu)的。Java語言是原生支持多線程的。在Java語言中,線程是一種特殊的對象,它必須由Thread類或其子(孫)類來創(chuàng)建。1.2Java語言概述是SUN(StanfordUniversityNetwork,斯坦福大學(xué)網(wǎng)絡(luò)公司)1995年推出的一門高級編程語言。95年,SUN發(fā)布JDK1.0,98年,JDK1.2,后續(xù)JDK1.3,1.4,1.5(更名為Java5.0)最新為JDK1.8。是一種面向Internet的編程語言。隨著Java技術(shù)在web方面的不斷成熟,已經(jīng)成為Web應(yīng)用程序的首選開發(fā)語言。1.2Java語言概述Java技術(shù)體系平臺Java

SE(JavaStandardEdition)標(biāo)準(zhǔn)版支持面向桌面級應(yīng)用(如Windows下的應(yīng)用程序)的Java平臺,提供了完整的Java核心API,此版本以前稱為J2SEJava

EE(JavaEnterpriseEdition)企業(yè)版是為開發(fā)企業(yè)環(huán)境下的應(yīng)用程序提供的一套解決方案。該技術(shù)體系中包含的技術(shù)如:Servlet、Jsp等,主要針對于Web應(yīng)用程序開發(fā)。版本以前稱為J2EEJavaME(JavaMicroEdition)小型版支持Java程序運(yùn)行在移動終端(手機(jī)、PDA)上的平臺,對JavaAPI有所精簡,并加入了針對移動終端的支持,此版本以前稱為J2MEJavaCard支持一些Java小程序(Applets)運(yùn)行在小內(nèi)存設(shè)備(如智能卡)上的平臺Java在各領(lǐng)域中的應(yīng)用從Java的應(yīng)用領(lǐng)域來分,Java語言的應(yīng)用方向主要表現(xiàn)在以下幾個方面:企業(yè)級應(yīng)用:主要指復(fù)雜的大企業(yè)的軟件系統(tǒng)、各種類型的網(wǎng)站。Java的安全機(jī)制以及它的跨平臺的優(yōu)勢,使它在分布式系統(tǒng)領(lǐng)域開發(fā)中有廣泛應(yīng)用。應(yīng)用領(lǐng)域包括金融、電信、交通、電子商務(wù)等。Android平臺應(yīng)用:Android應(yīng)用程序使用Java語言編寫。Android開發(fā)水平的高低很大程度上取決于Java語言核心能力是否扎實(shí)。移動領(lǐng)域應(yīng)用,主要表現(xiàn)在消費(fèi)和嵌入式領(lǐng)域,是指在各種小型設(shè)備上的應(yīng)用,包括手機(jī)、PDA、機(jī)頂盒、汽車通信設(shè)備等。移動開發(fā)VS企業(yè)級開發(fā)1.3Java語言運(yùn)行機(jī)制及運(yùn)行過程特點(diǎn)一:面向?qū)ο髢蓚€基本概念:類、對象三大特性:封裝、繼承、多態(tài)特點(diǎn)二:健壯性吸收了C/C++語言的優(yōu)點(diǎn),但去掉了其影響程序健壯性的部分(如指針、內(nèi)存的申請與釋放等),提供了一個相對安全的內(nèi)存管理和訪問機(jī)制特點(diǎn)三:跨平臺性跨平臺性:通過Java語言編寫的應(yīng)用程序在不同的系統(tǒng)平臺上都可以運(yùn)行?!癢riteonce,RunAnywhere”原理:只要在需要運(yùn)行java應(yīng)用程序的操作系統(tǒng)上,先安裝一個Java虛擬機(jī)(JVMJavaVirtualMachine)即可。由JVM來負(fù)責(zé)Java程序在該系統(tǒng)中的運(yùn)行。Java語言的特點(diǎn)Java語言的特點(diǎn):跨平臺性因?yàn)橛辛薐VM,同一個Java程序在三個不同的操作系統(tǒng)中都可以執(zhí)行。這樣就實(shí)現(xiàn)了Java程序的跨平臺性。JAVA程序Windows操作系統(tǒng)Linux操作系統(tǒng)Mac操作系統(tǒng)Win版的JVMlinux版的JVMMac版的JVM1.3Java語言運(yùn)行機(jī)制及運(yùn)行過程1.3Java語言運(yùn)行機(jī)制及運(yùn)行過程Java兩種核心機(jī)制Java虛擬機(jī)(JavaVirtalMachine)垃圾收集機(jī)制(GarbageCollection)核心機(jī)制—Java虛擬機(jī)JVM是一個虛擬的計(jì)算機(jī),具有指令集并使用不同的存儲區(qū)域。負(fù)責(zé)執(zhí)行指令,管理數(shù)據(jù)、內(nèi)存、寄存器。對于不同的平臺,有不同的虛擬機(jī)。Java虛擬機(jī)機(jī)制屏蔽了底層運(yùn)行平臺的差別,實(shí)現(xiàn)了“一次編譯,到處運(yùn)行”。硬件操作系統(tǒng)JVM字節(jié)碼文件用戶user核心機(jī)制—垃圾回收不再使用的內(nèi)存空間應(yīng)回收——垃圾回收。在C/C++等語言中,由程序員負(fù)責(zé)回收無用內(nèi)存。Java語言消除了程序員回收無用內(nèi)存空間的責(zé)任:它提供一種系統(tǒng)級線程跟蹤存儲空間的分配情況。并在JVM空閑時,檢查并釋放那些可被釋放的存儲空間。垃圾回收在Java程序運(yùn)行過程中自動進(jìn)行,程序員無法精確控制和干預(yù)。1.4Java語言的環(huán)境搭建明確什么是JDK,JRE下載JDK安裝JDK配置環(huán)境變量path:windows系統(tǒng)執(zhí)行命令時要搜尋的路徑。 ;%JAVA_HOME%\bin;classpath:java在編譯和運(yùn)行時要找的class所在的路徑。 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar;驗(yàn)證是否成功:javacjava選擇合適的文本編輯器或IDE開發(fā)什么是JDK,JREJDK(JavaDevelopmentKitJava開發(fā)工具包)JDK是提供給Java開發(fā)人員使用的,其中包含了java的開發(fā)工具,也包括了JRE。所以安裝了JDK,就不用在單獨(dú)安裝JRE了。其中的開發(fā)工具:編譯工具(javac.exe)打包工具(jar.exe)等JRE(JavaRuntimeEnvironmentJava運(yùn)行環(huán)境)包括Java虛擬機(jī)(JVMJavaVirtualMachine)和Java程序所需的核心類庫等,如果想要運(yùn)行一個開發(fā)好的Java程序,計(jì)算機(jī)中只需要安裝JRE即可。簡單而言,使用JDK的開發(fā)工具完成的java程序,交給JRE去運(yùn)行。JVM、JRE、JDK關(guān)系

下載、安裝JDK官方網(wǎng)址:安裝JDK傻瓜式安裝,下一步即可。建議:安裝路徑不要有中文或者特殊符號如空格等。當(dāng)提示安裝JRE時,可以選擇不安裝。配置環(huán)境變量path在dos命令行中敲入javac,出現(xiàn)錯誤提示:錯誤原因:當(dāng)前執(zhí)行的程序在當(dāng)前目錄下如果不存在,windows系統(tǒng)會在系統(tǒng)中已有的一個名為path的環(huán)境變量指定的目錄中查找。如果仍未找到,會出現(xiàn)以上的錯誤提示。所以進(jìn)入到j(luò)dk安裝路徑\bin目錄下,執(zhí)行javac,會看到j(luò)avac參數(shù)提示信息。配置環(huán)境變量path每次執(zhí)行java的工具都要進(jìn)入到bin目錄下,是非常麻煩的??刹豢梢栽谌魏文夸浵露伎梢詧?zhí)行java的工具呢?根據(jù)windows系統(tǒng)在查找可執(zhí)行程序的原理,可以將java工具所在路徑定義到path環(huán)境變量中,讓系統(tǒng)幫我們?nèi)フ疫\(yùn)行執(zhí)行的程序。配置方法:我的電腦--屬性--高級系統(tǒng)設(shè)置--環(huán)境變量編輯path環(huán)境變量,在變量值開始處加上java工具所在目錄,后面用“;”和其他值分隔開即可。打開DOS命令行,任意目錄下敲入javac。如果出現(xiàn)javac的參數(shù)信息,配置成功。步驟:將Java代碼編寫到擴(kuò)展名為.java的文件中。通過javac命令對該java文件進(jìn)行編譯。通過java命令對生成的class文件進(jìn)行運(yùn)行。.java文件.class文件結(jié)果javac.exe編譯java.exe運(yùn)行源文件1.5開發(fā)體驗(yàn)—HelloWorld字節(jié)碼文件步驟一:編寫選擇最簡單的編輯器:記事本。敲入代碼classTest{

}將文件保存成Test.java,這個文件是存放java代碼的文件,稱為源文件。取消勾選步驟二:編譯有了java源文件,通過編譯器將其編譯成JVM可以識別的字節(jié)碼文件。在該源文件目錄下,通過javac編譯工具對Test.java文件進(jìn)行編譯。如果程序沒有錯誤,沒有任何提示,但在當(dāng)前目錄下會出現(xiàn)一個Test.class文件,該文件稱為字節(jié)碼文件,也是可以執(zhí)行的java的程序。步驟三:運(yùn)行有了可執(zhí)行的java程序(Test.class字節(jié)碼文件)通過運(yùn)行工具java.exe對字節(jié)碼文件進(jìn)行執(zhí)行。出現(xiàn)提示:缺少一個名稱為main的方法。因?yàn)橐粋€程序的執(zhí)行需要一個起始點(diǎn)或者入口,所以在Test類中的加入publicstaticvoidmain(String[]args){

}對修改后的Test.java源文件需要重新編譯,生成新的class文件后,再進(jìn)行執(zhí)行。發(fā)現(xiàn)沒有編譯失敗,但也沒有任何效果,因?yàn)椴]有告訴JVM要幫我們做什么事情,也就是沒有可以具體執(zhí)行的語句。想要和JVM來個互動,只要在main方法中加入一句System.out.println(“HelloWorld");因?yàn)槌绦蜻M(jìn)行改動,所以再重新編譯,運(yùn)行即可。1.6小結(jié)第一個程序Java源文件以“java”為擴(kuò)展名。源文件的基本組成部分是類(class),如本類中的HelloWorld類。一個源文件中最多只能有一個public類。其它類的個數(shù)不限,如果源文件包含一個public類,則文件名必須按該類名命名。Java應(yīng)用程序的執(zhí)行入口是main()方法。它有固定的書寫格式:publicstaticvoidmain(String[]args){...}Java語言嚴(yán)格區(qū)分大小寫。Java方法由一條條語句構(gòu)成,每個語句以“;”結(jié)束。大括號都是成對出現(xiàn)的,缺一不可。1.7常見問題及解決方法源文件名不存在或者寫錯,或者當(dāng)前路徑錯誤。類文件名寫錯,或者類文件不在當(dāng)前路徑下,或者不在classpath指定路徑下。1.7常見問題及解決方法編譯失敗,注意錯誤出現(xiàn)的行數(shù),再到源代碼中指定位置改錯聲明為public的主類應(yīng)與文件名一致,否知編譯失敗1.8注釋用于注解說明解釋程序的文字就是注釋。提高了代碼的閱讀性;調(diào)試程序的重要方法。Java中的注釋類型:單行注釋//--<!---->多行注釋文檔注釋(java特有)注釋是一個程序員必須要具有的良好編程習(xí)慣。將自己的思想通過注釋先整理出來,再用代碼去體現(xiàn)1.8注釋單行注釋格式://注釋文字多行注釋格式: /*注釋文字*/注:對于單行和多行注釋,被注釋的文字,不會被JVM(java虛擬機(jī))解釋執(zhí)行。多行注釋里面不允許有多行注釋嵌套。1.8注釋文檔注釋(java特有)格式:/**

*@author指定java程序的作者

*@version指定源文件的版本

*@param方法的參數(shù)說明信息

*/注

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論