Java程序設(shè)計是計算機專業(yè)的基礎(chǔ)課程,當今是"互聯(lián)網(wǎng)+”的時代,也是信息時代,如何獲取信息、處理信息,是每個人都需碰到的事情。無論網(wǎng)上購物,還是移動支付,都有信息流的流動,而支撐這種信息技術(shù)的廣闊應用的計算機語言就數(shù)Java語言。 根據(jù)TIOBE編程語言社區(qū)排行榜提供編程語言Java不是排在**位就是排在第二位。在云計算、物聯(lián)網(wǎng)時代背景下,學習并掌握一門編程語言,對信息化建設(shè)大有益處。 本書采用情境方式,由淺入深,一步一個腳印全面講解Java編程思想,讓讀者在學習過程中,首先證實Java不難,能夠?qū)W會,其次,Java應用就在我們身邊,我們也能用好。
適讀人群 :本書適用于高職院校教材和工程技術(shù)人員參考書,也是廣大Java愛好者自學良師益友。
當今是“互聯(lián)網(wǎng)+”的時代,也是信息時代,如何獲取信息、處理信息,是每個人都需碰到的事情。無論網(wǎng)上購物,還是移動支付,都有信息流的流動,而支撐這種信息技術(shù)的廣闊應用的計算機語言就數(shù)Java 語言。根據(jù)TIOBE 編程語言社區(qū)排行榜提供編程語言Java 不是排在*一位就是排在第二位。在云計算、物聯(lián)網(wǎng)時代背景下,學習并掌握一門編程語言,對信息化建設(shè)大有益處。
本書采用情境方式,由淺入深,一步一個腳印全面講解Java 編程思想,讓讀者在學習過程中,首先證實Java 不難,能夠?qū)W會,其次,Java 應用就在我們身邊,我們也能用好。
當今是“互聯(lián)網(wǎng)+”的時代,也是信息時代,如何獲取信息、處理信息,是每個人都需碰到的事情。無論網(wǎng)上購物,還是移動支付,都有信息流的流動,而支撐這種信息技術(shù)的廣闊應用的計算機語言就數(shù)Java語言。
根據(jù)TIOBE編程語言社區(qū)排行榜提供編程語言Java不是排在第一位就是排在第二位。在云計算、物聯(lián)網(wǎng)時代背景下,學習并掌握一門編程語言,對信息化建設(shè)大有益處。
本書采用情境方式,由淺入深,一步一個腳印全面講解Java編程思想,讓讀者在學習過程中,首先證實Java不難,能夠?qū)W會,其次,Java應用就在我們身邊,我們也能用好。
由于Java語言涉及的面較廣,全書將Java知識點進行整合概括,修剪一些枝葉,共分七個情境,由易到綜合,緊緊圍繞編程精髓——編程思想展開,是作者多年教學和應用Java結(jié)晶。書后附上Java經(jīng)典50問與答,可以幫助編程者更進一步理解掌握編程思想精髓并了解這個行業(yè)的未來。在編寫過程中也參考了大量Java方面的書籍和網(wǎng)絡資料,在此對他們的付出表示誠摯謝意。
由于Java是開源,且新技術(shù)不斷推出,再加上時間緊、作者水平有限,難免出現(xiàn)不足的地方敬請讀者提出批評,讓我們一起為信息化建設(shè)作出努力。
本書是淮南聯(lián)合大學校級特色專業(yè)——計算機應用技術(shù)質(zhì)量工程建設(shè)項目內(nèi)容,同時也是《Java程序設(shè)計》精品課程建設(shè)項目。本書由淮南聯(lián)合大學葉加青、蕪湖職業(yè)技術(shù)學院張俊、克拉瑪依職業(yè)技術(shù)學院楊靜擔任主編,安徽職業(yè)技術(shù)學院李軍、江蘇海事職業(yè)技術(shù)學院孫炯寧、呂太之、黑龍江農(nóng)業(yè)職業(yè)技術(shù)學院聶樹成擔任副主編,重慶三峽職業(yè)學院余淼、重慶電信職業(yè)學院段鵬、安徽警官職業(yè)學院勞雪松、尹向兵、朱珍元、湖南高速鐵路職業(yè)技術(shù)學院陽衛(wèi)文擔任編委共同編寫完成。全書由葉加青統(tǒng)稿審核。
在編寫過程中,編者參閱了大量的資料,在此向各位參與編寫的作者表示感謝,由于編者水平有限,書中難免存在疏漏之處,歡迎大家批評指正,衷心希望廣大使用者尤其是任課教師提出寶貴的修訂建議,以便再版時及時加以修正。
為了使本書更好地服務于授課教師的教學,我們?yōu)楸緯淞私虒W講義、期中、末考卷及答案、PPT課件和課后習題、答案。如果使用本教材的所有人員,需要配套教學資源,可上華信教育資源網(wǎng)www.hxedu.com.cn下載。如有問題,可與我們聯(lián)系,聯(lián)系電話:(010)69730296、13331005816。
編 者
2017年12月
葉加青,1989年7月畢業(yè)于安徽師范大學數(shù)學系,1994年程序員,2011年合肥工業(yè)大學碩士畢業(yè),六年企業(yè)大型數(shù)據(jù)庫信息系統(tǒng)管理與維護經(jīng)歷,從事數(shù)據(jù)庫和Java語言程序設(shè)計課程教學工作十多年。
主持《計算機應用技術(shù)》特色專業(yè)建設(shè)。
主持《Java程序設(shè)計》精品課程建設(shè)。
主持省自然科學項目《Microsoft時序算法對學生就業(yè)市場預測與分析》。
主持省重點科研項目《基于智能計算水色圖像的水質(zhì)監(jiān)測方法研究》
模塊一 Java編程基礎(chǔ) 1
情境一:只有一個main()方法的Java程序 1
任務1 (1)用C語言輸出"Hello world!"字樣 1
(2)用Java語言輸出"Hello world!"字樣 1
任務2 已知一個圓的半徑r=10.2,求出圓的面積 10
任務3 觀察分析下面程序的運行結(jié)果 11
任務4 加法運算符,分析并改正下列代碼,輸出運行結(jié)果 17
任務5 加加運算符,Example5.java程序代碼 20
任務6 三元運算符,以命令行方式任意輸入兩個整數(shù),輸出其中的最大值 21
任務7 用戶從鍵盤輸入一個整數(shù),判斷是否為7的倍數(shù),并給出相應的
提示信息 23
任務8 根據(jù)學生的成績,輸出對應的等級信息,學生成績由程序參數(shù)輸入 24
任務9 switch經(jīng)典舉例:根據(jù)月份,輸出對應的天數(shù) 27
任務10 經(jīng)典舉例:求1~100之間的和 29
任務11 猜數(shù)字游戲,機器產(chǎn)生一個1~100之間的隨機整數(shù),用戶可以反復猜測所生成的數(shù)是大是小,在用戶每次猜數(shù)之后,程序給出相應的提示信息,直到猜對為止 30
任務12 輸出1~9中除6以外所有偶數(shù)的平方 32
情境一總結(jié) 34
鞏固與提高 35
模塊二 面向?qū)ο蟪绦蛟O(shè)計初步 39
情境二:有兩個方法的Java程序 39
任務13 求兩個數(shù)之和的簡單程序 39
任務14 分析下列程序的運行結(jié)果 41
情境二總結(jié) 44
鞏固與提高 44
模塊三 面向?qū)窍蟪绦蛟O(shè)計提高 48
情境三:既有屬性又有方法的Java程序 48
任務15 定義一個描述圓的類,并能根據(jù)給定的半徑計算和顯示圓的面積 48
任務16 成員屬性(成員變量)與局部變量的區(qū)別 50
任務17 有返回值方法與無返回值方法。分析代碼,并寫出運行結(jié)果 52
任務18 編寫一個類,能實現(xiàn)計算兩個整數(shù)的和,也能計算三個整數(shù)的和,
還能計算兩個單精度數(shù)據(jù)之和 54
任務19 有一種方法稱構(gòu)造方法。構(gòu)造方法是類的成員,是方法,但與普通
方法有所不同,所以以一個任務來學習 55
任務20 領(lǐng)會下述代碼中修飾符public、protected、默認、private、static、final
的作用 58
任務21 面向?qū)ο蟮诙筇卣鳕D―繼承 61
任務22 面向?qū)ο蟮牡谌筇卣鳕D―多態(tài) 62
任務23 分析下列程序this關(guān)鍵字、super關(guān)鍵字的作用 65
情境三總結(jié) 67
鞏固與提高 67
模塊四 包與接口的使用 69
情境四:一個包兩個類的Java程序 69
任務24 包的使用一 69
任務25 包的使用二 72
任務26 抽象類的定義,抽象類和具體類的關(guān)系,abstract關(guān)鍵字的使用 75
任務27 定義一個接口,并定義相應的抽象類實現(xiàn)接口中的方法 77
情境四總結(jié) 82
鞏固與提高 82
模塊五 Java常用類的使用 83
情境五:常用工具Java程序 83
任務28 生成一個隨機整數(shù)數(shù)列并按從小到大排序 83
任務29 二維數(shù)組舉例。隨機生成數(shù)組成員長度不同的二維數(shù)組,完成學校
各系部和專業(yè)學生數(shù)的賦值 85
任務30 字符串處理手段:String類、StringBuffer類、StringTokenizer類 87
任務31 Date類的使用 97
任務32 Calendar類的使用 98
任務33 異常處理類(一) 100
任務34 異常處理類(二) 104
任務35 泛型舉例 108
任務36 泛型接口舉例 111
任務37 集合框架(一)鏈表LinkList<E>泛型類 112
任務38 集合框架(二)樹集TreeSet<E>泛型類 113
任務39 集合框架(三)堆棧Stack<E>泛型類 115
任務40 集合框架(四)散列映射HashMap<K,V>泛型類 116
任務41 輸入與輸出(IO流) 118
任務42 Java制作二維碼 145
情境五總結(jié) 150
鞏固與提高 150
模塊六 網(wǎng)絡知識與圖形用戶界面 151
情境六:網(wǎng)絡五子棋程序剖析與自制記事本 151
任務43 網(wǎng)絡五子棋程序 151
任務44 自制記事本程序 179
情境六總結(jié) 185
鞏固與提高 185
模塊七 數(shù)據(jù)庫與網(wǎng)絡編程 186
情境七:網(wǎng)上購物系統(tǒng)中數(shù)據(jù)庫操作剖析 186
任務45 簡易商務網(wǎng)站程序演示 186
情境七總結(jié) 200
鞏固與提高 201
模塊八 Java拓展與方向 202
情境八:Java經(jīng)典[Q&A]50問 202
情境八總結(jié) 230
鞏固與提高 230
參考文獻 231