Java程序設(shè)計(jì)教程(第2版) 課件全套 張延軍 第1-14章 走進(jìn)Java編程世界- 排隊(duì)叫號(hào)系統(tǒng)的編程實(shí)現(xiàn)_第1頁(yè)
Java程序設(shè)計(jì)教程(第2版) 課件全套 張延軍 第1-14章 走進(jìn)Java編程世界- 排隊(duì)叫號(hào)系統(tǒng)的編程實(shí)現(xiàn)_第2頁(yè)
Java程序設(shè)計(jì)教程(第2版) 課件全套 張延軍 第1-14章 走進(jìn)Java編程世界- 排隊(duì)叫號(hào)系統(tǒng)的編程實(shí)現(xiàn)_第3頁(yè)
Java程序設(shè)計(jì)教程(第2版) 課件全套 張延軍 第1-14章 走進(jìn)Java編程世界- 排隊(duì)叫號(hào)系統(tǒng)的編程實(shí)現(xiàn)_第4頁(yè)
Java程序設(shè)計(jì)教程(第2版) 課件全套 張延軍 第1-14章 走進(jìn)Java編程世界- 排隊(duì)叫號(hào)系統(tǒng)的編程實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩442頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1走進(jìn)Java編程世界2023年1說(shuō)在前面的話在開(kāi)始學(xué)習(xí)Java之前,我們要認(rèn)真地思考以下幾個(gè)問(wèn)題:我們要學(xué)什么,掌握什么?(What)學(xué)習(xí)目標(biāo)要明確。我們?yōu)槭裁匆獙W(xué)Java?(Why)理清學(xué)生需求,端正學(xué)生學(xué)習(xí)態(tài)度。我們?nèi)绾螌W(xué)Java?(How)學(xué)習(xí)方法要科學(xué),學(xué)習(xí)路徑要清晰。

12周以后,Java學(xué)得怎么樣?(達(dá)成度),如何衡量我們是否掌握了Java?

21Java那些事2搭建Java開(kāi)發(fā)環(huán)境3在Eclipse中開(kāi)發(fā)Java應(yīng)用程序4小結(jié)學(xué)習(xí)提綱31.Java那些事如C語(yǔ)言、Python語(yǔ)言一樣,Java語(yǔ)言是一種的程序設(shè)計(jì)語(yǔ)言,并且是面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。Java語(yǔ)言的發(fā)明公司是Sun公司。JamesGosling是Java語(yǔ)言的共同創(chuàng)始人之一,后來(lái)JamesGosling被稱為Java之父。Sun公司于1995年正式對(duì)外公布Java語(yǔ)言,發(fā)布了JDK1.0。1.1Java是什么?41.Java那些事2007年11月,Google公司宣布推出基于Linux的開(kāi)源智能手機(jī)操作系統(tǒng)-Android,迅速占領(lǐng)市場(chǎng)。Android使用Java語(yǔ)言開(kāi)發(fā)應(yīng)用程序,這給了Java一個(gè)新的發(fā)展和推廣機(jī)遇。2010年,Oracle公司宣布以74億美元價(jià)格收購(gòu)Sun公司。Oracle公司加快JDK發(fā)布節(jié)奏。1.1Java是什么?51.Java那些事JDK版本發(fā)布的時(shí)間及版本如圖所示。1.1Java是什么?1996年1月JDK1.0Oak(橡樹(shù))J2SE1.2Playground(運(yùn)動(dòng)場(chǎng))1998年12月2002年2月J2SE1.4Merlin(灰背隼)2004年9月JavaSE5.0Tiger(老虎)2006年4月JavaSE6.0Mustang(野馬)JavaSE7.0Dolphin(海豚)2011年7月2014年3月JavaSE8.0Spider(蜘蛛)2017年9月JavaSE9.02018年3月JavaSE

10.02018年9月JavaSE

11.02019年7月JavaSE

12.02020年1月JavaSE

13.02020年7月JavaSE

14.02021年1月JavaSE

15.061.Java那些事簡(jiǎn)單高效:采用類C語(yǔ)言語(yǔ)法,隱藏了C/C++語(yǔ)言中指針、多重繼承等難理解、難應(yīng)用技術(shù),對(duì)數(shù)據(jù)類型進(jìn)行精簡(jiǎn)和統(tǒng)一,降低了學(xué)習(xí)門檻。力圖用最小的系統(tǒng)完成盡可能多的功能。面向?qū)ο螅好嫦驅(qū)ο笫且环N模擬人類社會(huì)中人解決實(shí)際問(wèn)題的編程模型,關(guān)注應(yīng)用中數(shù)據(jù)和操縱數(shù)據(jù)的算法,更符合人們的思維習(xí)慣,更容易擴(kuò)充和維護(hù)。自動(dòng)內(nèi)存管理:Java采用自動(dòng)垃圾回收機(jī)制,實(shí)現(xiàn)了內(nèi)存分配和回收的自動(dòng)管理,編程效率和安全性大大提高。1.2Java的特點(diǎn)71.Java那些事平臺(tái)無(wú)關(guān)性與可移植性:Java采用解釋與編譯相結(jié)合,先被編譯成*.class字節(jié)碼,然后再由JVM解釋執(zhí)行,實(shí)現(xiàn)了程序運(yùn)行效率和不同操作系統(tǒng)之間可移植性的完美結(jié)合。安全性:Java從底層設(shè)計(jì)上就強(qiáng)調(diào)網(wǎng)絡(luò)環(huán)境下的安全性,采用公鑰加密算法為基礎(chǔ)的字節(jié)碼驗(yàn)證技術(shù),具有更高的安全性。分布式和動(dòng)態(tài):Java既是一門分布式語(yǔ)言,又是一種動(dòng)態(tài)語(yǔ)言(動(dòng)態(tài)編譯、動(dòng)態(tài)加載、動(dòng)態(tài)執(zhí)行)。因此,Java語(yǔ)言是跨平臺(tái)、高并發(fā)、高性能互聯(lián)網(wǎng)架構(gòu)的首選語(yǔ)言。1.2Java的特點(diǎn)81.Java那些事為了適應(yīng)未來(lái),你應(yīng)該去學(xué)Java。學(xué)習(xí)掌握一門主流編程語(yǔ)言,鍛煉集成創(chuàng)新能力和計(jì)算思維,是一個(gè)現(xiàn)代大學(xué)生的必備技能和核心競(jìng)爭(zhēng)力。影響巨大,Java值得你去學(xué)習(xí)。Java語(yǔ)言經(jīng)過(guò)二十幾年的發(fā)展,已經(jīng)發(fā)展成為人類計(jì)算機(jī)史上影響深遠(yuǎn)的編程語(yǔ)言。Java語(yǔ)言所崇尚的開(kāi)源、自由等精神,吸引了世界頂尖軟件公司和無(wú)數(shù)優(yōu)秀的程序員。Java技術(shù)具有卓越的通用性、高效性、平臺(tái)可移植性和安全性,廣泛應(yīng)用于個(gè)人PC、數(shù)據(jù)中心、游戲控制臺(tái)、超級(jí)計(jì)算機(jī)、移動(dòng)電話和互聯(lián)網(wǎng)。因此,Java已經(jīng)超出了編程語(yǔ)言的范疇,發(fā)展為一個(gè)開(kāi)發(fā)平臺(tái)、一個(gè)產(chǎn)業(yè)、一種思想、一種文化。1.3為什么要學(xué)Java?91.Java那些事自2001年6月TIOBE編程榜發(fā)布以來(lái),總體只有13個(gè)編程語(yǔ)言曾經(jīng)進(jìn)入前十名,而Java語(yǔ)言多年來(lái)一直高居榜首。1.3為什么要學(xué)習(xí)Java?101.Java那些事學(xué)習(xí)Java,擁有完整的計(jì)算生態(tài)。Java語(yǔ)言擁有一套十幾年積累、許多軟件公司傾力打造、經(jīng)無(wú)數(shù)軟件工程項(xiàng)目測(cè)試的龐大且完善的類庫(kù),內(nèi)置了其他語(yǔ)言需要操作系統(tǒng)才能支持的功能,擁有全球最大的開(kāi)發(fā)者專業(yè)社群,構(gòu)建了一個(gè)完整開(kāi)放的計(jì)算生態(tài)。1.3為什么要學(xué)習(xí)Java?111.Java那些事《Java程序設(shè)計(jì)》是一門實(shí)踐性非常高的課程。光靠看微視頻、閱讀講義、做習(xí)題,不編程、不實(shí)踐是學(xué)不會(huì)Java的。按照本MOOC的要求,打開(kāi)手機(jī),打開(kāi)筆記本電腦,打開(kāi)Eclipse集成開(kāi)發(fā)環(huán)境,在學(xué)習(xí)過(guò)程中隨時(shí)準(zhǔn)備驗(yàn)證和編程。知識(shí)學(xué)習(xí):根據(jù)翻轉(zhuǎn)式學(xué)習(xí)的要求,要求首先認(rèn)真閱讀每周提供的PDF講義。然后再看微視頻,并在其指導(dǎo)下完成驗(yàn)證操作和編程實(shí)訓(xùn)。最后做作業(yè)并參加討論。程序閱讀能力訓(xùn)練:將每周提供的Java源程序復(fù)制到JavaSE11Test工程中運(yùn)行,認(rèn)真閱讀程序,直觀地理解相關(guān)概念,掌握相關(guān)技巧。1.4怎樣學(xué)習(xí)Java?121.Java那些事程序編寫能力訓(xùn)練:理解需求,確定算法,查閱JDK文檔,編寫程序。每周我們都會(huì)布置2-4個(gè)50行左右的編程作業(yè)。程序調(diào)試能力訓(xùn)練:Java編程過(guò)程中出現(xiàn)錯(cuò)誤是經(jīng)常發(fā)生的事情。錯(cuò)誤主要包括語(yǔ)法錯(cuò)誤、邏輯錯(cuò)誤、設(shè)計(jì)錯(cuò)誤。我們要根據(jù)Eclipse提供出錯(cuò)信息和修改建議,進(jìn)入Debug調(diào)試模式,迅速定位錯(cuò)誤并改正。迭代開(kāi)發(fā)銀行排隊(duì)叫號(hào)模擬程序:用一個(gè)難度和工作量適中的課程設(shè)計(jì)貫穿整個(gè)學(xué)習(xí)過(guò)程(3-12周),完成各章節(jié)知識(shí)的融會(huì)貫通?!狙菔九抨?duì)叫號(hào)系統(tǒng)】1.4怎樣學(xué)習(xí)Java?131.Java那些事教學(xué)團(tuán)隊(duì)將陪伴你的左右,給予全程支持與服務(wù):每周我們都提供了FAQ(常見(jiàn)問(wèn)題解答)。你在學(xué)習(xí)過(guò)程中遇到問(wèn)題可以隨時(shí)提問(wèn),教學(xué)團(tuán)隊(duì)將即時(shí)給予解答,共性問(wèn)題將納入FAQ。通過(guò)“學(xué)生互評(píng)和討論”構(gòu)建Java學(xué)習(xí)互助社區(qū),共同學(xué)習(xí)Java,在交流和討論提高,在編程調(diào)試中升華。1.4怎樣學(xué)習(xí)Java?141.Java那些事每周設(shè)置10個(gè)左右的客觀題(選擇題、填空題):完成知識(shí)考核。每周要求閱讀2-4個(gè)程序,完成講義、微視頻中要求驗(yàn)證、實(shí)際操作和編程。(不納入考核)每周編程作業(yè):采用Online-Judge或?qū)W生互評(píng)的方式完成編程能力考核。課程設(shè)計(jì):第3-12周,每周完成課程設(shè)計(jì)一部門,第12周完成融合。(暫時(shí)不納入考核)期末考試:從題庫(kù)中隨機(jī)抽取客觀題完成知識(shí)考核。1.5怎樣評(píng)價(jià)Java的學(xué)習(xí)效果?151Java那些事2搭建Java開(kāi)發(fā)環(huán)境3在Eclipse中開(kāi)發(fā)Java應(yīng)用程序4小結(jié)教學(xué)提綱162.搭建Java開(kāi)發(fā)環(huán)境JVM(JavaVirtualMachine):指可以運(yùn)行Java字節(jié)碼(*.class)的虛擬計(jì)算機(jī)。Sun公司為Solaris、Windows、Linux、Mac等不同的操作系統(tǒng)和硬件開(kāi)發(fā)了不同的JVM。這樣,字節(jié)碼文件就可以在不同的操作系統(tǒng)JVM支持下運(yùn)行。JRE(JavaRuntimeEnvironment):面向Java程序的使用者,提供Java運(yùn)行環(huán)境,主要由JVM、API類庫(kù)、發(fā)布技術(shù)三部分構(gòu)成。如果我們只想運(yùn)行別人開(kāi)發(fā)的Java程序,可只安裝JRE即可。2.1JVM、JRE和JDK172.搭建Java開(kāi)發(fā)環(huán)境JDK(JavaDevelopmentKit):面向Java程序的開(kāi)發(fā)者,提供Java的開(kāi)發(fā)環(huán)境和運(yùn)行環(huán)境,主要由JRE和編譯、運(yùn)行、調(diào)試Java應(yīng)用程序的各種工具和資源包構(gòu)成。如果我們想開(kāi)發(fā)Java程序,請(qǐng)安裝相應(yīng)版本的JDK。除了Sun公司發(fā)布的JDK外,IBM、Oracle等公司也發(fā)布了自己的JDK版本。2.1JVM、JRE和JDK182.搭建Java開(kāi)發(fā)環(huán)境Java程序通常要經(jīng)過(guò):編輯、編譯、加載、驗(yàn)證和運(yùn)行五個(gè)步驟來(lái)運(yùn)行。2.1JVM、JRE和JDK192.搭建Java開(kāi)發(fā)環(huán)境為了更好地適應(yīng)軟件開(kāi)發(fā),Java的設(shè)計(jì)者為我們提供了三種Java平臺(tái):JavaME(JavaMicroEdition):適合機(jī)頂盒、移動(dòng)電話、智能卡、PDA等電子設(shè)備進(jìn)行嵌入式開(kāi)發(fā)的微型版。JavaSE(JavaStandardEdition):適合桌面系統(tǒng)開(kāi)發(fā)的標(biāo)準(zhǔn)版,是學(xué)習(xí)JavaME和JavaEE平臺(tái)的基礎(chǔ)。JavaEE(EnterpriseEdition):JavaEE構(gòu)建在JavaSE之上,適合服務(wù)器應(yīng)用程序開(kāi)發(fā)的企業(yè)版。

JavaEE是目前企業(yè)級(jí)應(yīng)用的最出色平臺(tái)和最成功的解決方案。2.1JVM、JRE和JDK202.搭建Java開(kāi)發(fā)環(huán)境2.1JVM、JRE和JDKJavaSE組成212.搭建Java開(kāi)發(fā)環(huán)境從Oracle官方網(wǎng)站,可以下載JDK、JRE、JDK文檔、MySQL等。下面以JDK11.0.6為例,講解JDK的下載和安裝?!狙菔尽肯螺dJDK時(shí)要求注冊(cè)O(shè)racle賬號(hào)。雙擊下載的JDK安裝文件,按照安裝向?qū)нM(jìn)行安裝。JDK默認(rèn)安裝路徑:C:\ProgramFiles\Java\jdk-11.0.6。2.2JDK的下載、安裝和配置222.搭建Java開(kāi)發(fā)環(huán)境JDK環(huán)境變量包括java_home、path、classpath。在Windows操作系統(tǒng)中,我的電腦上右擊屬性->高級(jí)->環(huán)境變量,設(shè)置環(huán)境變量即可。java_home:指向JDK的安裝路徑,本機(jī)為C:\ProgramFiles\Java\jdk-11.0.4。path:設(shè)置操作系統(tǒng)尋找可執(zhí)行文件的路徑(java.exe、javac.exe等)。在path環(huán)境變量中增加C:\ProgramFiles\Java\jdk-11.0.4;或%java_home%\bin;classpath已經(jīng)不需要設(shè)置。2.2JDK的下載、安裝和配置232.搭建Java開(kāi)發(fā)環(huán)境測(cè)試Java開(kāi)發(fā)環(huán)境是否配置成功?可以在DOS命令行中測(cè)試。java–versionjavac–versionJDK文件夾中重要的文件夾和文件列出如下:bin文件夾:用來(lái)存放Java開(kāi)發(fā)中的常用工具。javac.exe:Java編譯器負(fù)責(zé)將java源代碼(.java)編譯為字節(jié)碼(.class)文件;java.exe:Java解釋器負(fù)責(zé)解釋執(zhí)行java字節(jié)碼(.class)文件。lib\src.zip:JDKAPI的類、接口的源碼壓縮文件。2.2JDK的下載、安裝和配置242.搭建Java開(kāi)發(fā)環(huán)境目前流行的Java集成開(kāi)發(fā)環(huán)境有:Eclipse、IntelliJ、NetBeans、MyEclipse、JBuilder、JDeveloper等。我們選擇業(yè)界最常用和市場(chǎng)占有率最高的的IDE:Eclipse。Eclipse是一個(gè)開(kāi)放源碼、基于Java、跨平臺(tái)、跨語(yǔ)言、功能完整、技術(shù)成熟、可擴(kuò)展的集成開(kāi)發(fā)環(huán)境。目前,Eclipse的最新版本是4.11。2.3Eclipse下載、安裝和配置252.搭建Java開(kāi)發(fā)環(huán)境Eclipse下載地址:/downloads/。Eclipse分為安裝版和解壓縮版。根據(jù)面向?qū)ο蟛煌?,Eclipse在標(biāo)準(zhǔn)版的基礎(chǔ)上,包含了不同功能插件集,我們選擇EclipseIDEforJavaDevelopers。Eclipse解壓縮版只需將下載文件eclipse-java-2019-03-R-win32-x86_64.zip,解壓縮到指定文件夾,然后雙擊eclipse.exe即可啟動(dòng)Eclipse。Eclipse每次啟動(dòng)時(shí)要求選擇一個(gè)工作空間或直接進(jìn)入默認(rèn)的工程空間。2.3Eclipse下載、安裝和配置261Java那些事2搭建Java開(kāi)發(fā)環(huán)境3在Eclipse中開(kāi)發(fā)Java應(yīng)用程序4小結(jié)教學(xué)提綱273.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序Eclipse的基本概念主要包括Workspace、Perspective、View、Project等,現(xiàn)分別介紹如下:Workspace(工作空間)負(fù)責(zé)管理使用者的資源。一個(gè)Workspace對(duì)應(yīng)磁盤上的一個(gè)文件夾,一個(gè)Workspace可以存放包含多個(gè)Project。一個(gè)工作空間存放了一套Eclipse環(huán)境參數(shù)(在windows->preferences配置)。Perspective(透視圖):一個(gè)透視圖保存了當(dāng)前的菜單欄、工具欄按鈕以及視圖的大小、位置、顯示與否的所有狀態(tài)。在不同的透視圖中可以進(jìn)行不同的工作內(nèi)容。

3.1Eclipse的基本概念283.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序View(視圖)是顯示在主界面中的一個(gè)單獨(dú)的小窗口,可以移動(dòng)、最大化、最小化、還原、調(diào)整大小和位置、顯示/關(guān)閉。

Project(項(xiàng)目)是現(xiàn)代軟件開(kāi)發(fā)的基本形式。以Project為中心的代碼管理和開(kāi)發(fā)形式是現(xiàn)代軟件工程的通用做法。在Java學(xué)習(xí)中,JavaProject是最基本最主要的形式。BuildPath(構(gòu)建路徑)解決JVM類加載器去哪里加載類文件的問(wèn)題。BuildPath告訴JVM可以去系統(tǒng)運(yùn)行庫(kù)(JRE)、第三方的功能擴(kuò)展庫(kù)、工作空間中的其他工程、甚至外部的類文件去加載類文件。3.1Eclipse的基本概念293.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序設(shè)置字符集編碼:Eclipse的字符集編碼默認(rèn)GBK。請(qǐng)?jiān)赪indow->preferences->General->workspace中將字符編碼設(shè)置為UTF-8。查看JDK編譯器設(shè)置:Window->Preferences->Java->Compiler->11。查看JRE設(shè)置:Window->Preferences->Java->InstallJREs->jdk-11.0.4。設(shè)置編輯窗口字體和大?。篏eneral->Appearance->ColorsandFonts->Java->JavaEditorTextFont中可以設(shè)置字體大小顏色。3.2Eclipse的簡(jiǎn)單設(shè)置303.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序設(shè)置內(nèi)容助手(ContentAssist)來(lái)加快程序員輸入Java代碼的速度,提高編程效率。Window->Preferences->Java->Editor->ContentAssist中設(shè)置觸發(fā)代碼提示的時(shí)間:AutoActivationdelay:200ms->100ms。設(shè)置觸發(fā)代碼提示的字符:->AutoActivationtriggersforjava框中在“.”后面加上“.abcdefghijklmnopqrstuvwxyz”。輸入以上字母自動(dòng)提示類、方法、參數(shù)等;輸入syso回車自動(dòng)替換為System.out.println();輸入main回車自動(dòng)替換為publicstaticvoidmain(String[]args){}等。3.2Eclipse的簡(jiǎn)單設(shè)置313.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序新建一個(gè)工程:File->newproject…->JavaProject在src中新建一個(gè)包:File->newPackage在當(dāng)前包中新建一個(gè)類:File->newClass在類中定義方法、輸入代碼運(yùn)行Java應(yīng)用程序:選中一個(gè)類,然后Run->Runas->JavaApplication或直接單擊工具欄中的運(yùn)行按鈕。一個(gè)JavaApplication必須有一個(gè)類包含main方法,這個(gè)類稱為本Java應(yīng)用程序主類。Java應(yīng)用程序的運(yùn)行總是從主類的main方法開(kāi)始的。3.3Eclipse基本操作323.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序請(qǐng)注意控制臺(tái)輸出的編譯信息,不用全部閱讀,要抓住關(guān)鍵字句,迅速定位錯(cuò)誤。編譯錯(cuò)誤(Error):多為語(yǔ)法錯(cuò)誤,不能通過(guò)編譯。運(yùn)行時(shí)錯(cuò)誤(Runtime):程序在運(yùn)行過(guò)程中出現(xiàn)錯(cuò)誤,不能通過(guò)編譯。警告(Warning):帶有警告信息的程序,不影響編譯和運(yùn)行。3.4我的第一個(gè)Java程序333.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序初學(xué)者可能遇到的問(wèn)題//Java單行注釋語(yǔ)句;與C語(yǔ)言相同。一個(gè)Java源文件中允許定義多個(gè)類或接口,但公共類或公共接口只能定義一個(gè),且公共類或公共接口的名字必須和所在Java源文件名相同。Java源文件編譯后定義的每一個(gè)類或接口都將生成一個(gè)獨(dú)立的.class文件。分隔符(Java程序的小數(shù)點(diǎn)、分號(hào)、{}、[]、()、雙引號(hào)、單引號(hào)、運(yùn)算符等)必須采用英文半角,否則會(huì)出現(xiàn)非法字符的錯(cuò)誤提示。main方法是JavaApplication的入口。3.4我的第一個(gè)Java程序343.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序?qū)⒍砹_斯方塊Java源代碼粘貼到JavaSETest項(xiàng)目的week01包下,修改錯(cuò)誤,存盤,運(yùn)行?!狙菔尽縀rrors:Thedeclaredpackage""doesnotmatchtheexpectedpackage"week01" Tetris.java /JavaSETest/src/week01 line1 有2個(gè)修改建議:Addpackagedeclaration"week01"MoveTetris.javatodefaultPackage.3.5俄羅斯方塊程序的運(yùn)行353.在Eclipse中開(kāi)發(fā)Java應(yīng)用程序在Java學(xué)習(xí)過(guò)程中,英文閱讀是一個(gè)不可回避的問(wèn)題。JDK文檔閱讀、Eclipse開(kāi)發(fā)環(huán)境、出錯(cuò)信息閱讀、標(biāo)識(shí)符的命名等涉及到科技英文的閱讀問(wèn)題??萍加⑽恼Z(yǔ)法相對(duì)簡(jiǎn)單,只要解決基本詞匯問(wèn)題即可。Java開(kāi)發(fā)過(guò)程中常用的英語(yǔ)詞匯在500左右。請(qǐng)?jiān)谑謾C(jī)和筆記本上安裝網(wǎng)易有道詞典,將生詞加入單詞本。記錄自己遇到的Eclipse出錯(cuò)提示信息。3.6Java開(kāi)發(fā)過(guò)程的英文閱讀問(wèn)題361Java那些事2搭建Java開(kāi)發(fā)環(huán)境3在Eclipse中開(kāi)發(fā)Java應(yīng)用程序4小結(jié)教學(xué)提綱374.小結(jié)觀看微視頻,并在筆記本電腦上實(shí)際操作。下載JDK11并安裝配置;下載Eclipse,解壓縮,進(jìn)入Eclipse并進(jìn)行簡(jiǎn)單配置。新建JavaProject:JavaSE11Test,在src中新建12個(gè)包:week01-week12,分別放置每周編寫的程序、示例程序、測(cè)試程序。在Eclipse中編輯、調(diào)試、運(yùn)行HelloWorld程序;在Eclipse中粘貼、調(diào)試、運(yùn)行俄羅斯方塊源碼。安裝有道詞典,常見(jiàn)英文單詞要求發(fā)音準(zhǔn)確,知道中文含義。敬請(qǐng)批評(píng)指正,謝謝!2023年2Java語(yǔ)言基礎(chǔ)一401Java語(yǔ)法成份2Java數(shù)據(jù)類型3數(shù)據(jù)的輸入和輸出4我們一起來(lái)編程學(xué)習(xí)提綱411.Java語(yǔ)法成份Java語(yǔ)法成份主要包括:標(biāo)識(shí)符、關(guān)鍵字、分隔符、注釋、數(shù)據(jù)類型、運(yùn)算符、表達(dá)式、語(yǔ)句、方法、類、接口、包等。認(rèn)真閱讀【示例程序2-1】輸出100-999之間所有的水仙花數(shù)功能描述:水仙花數(shù)指一個(gè)n位數(shù)(n≥3),其每位上的數(shù)字的3次冪之和等于它本身。例如153=13+53+33,153是水仙花數(shù)。421.Java語(yǔ)法成份認(rèn)真閱讀示例程序2-1,找出其中的語(yǔ)法成份并熟悉相關(guān)用法:關(guān)鍵字:紫紅色加粗字體。標(biāo)識(shí)符:包名,類名,方法名(main、println、pow),數(shù)組名(args),變量名(i、n1、n2、n3)。分隔符:以英文半角字符出現(xiàn)包括;{}()[].””運(yùn)算符:<=%/==*+。431.Java語(yǔ)法成份類的定義:類修飾符、類名和類體。熟悉方法的定義:方法修飾符返回類型方法名(形式參數(shù))方法體。熟悉靜態(tài)方法的調(diào)用:類名.方法名(實(shí)參數(shù))

,重點(diǎn)是System.out.println(i+"\t")和Math.pow(n1,3)方法的調(diào)用。熟悉局部變量的定義和使用。熟悉for、賦值、if等語(yǔ)句的使用。441.Java語(yǔ)法成份128347596451.Java語(yǔ)法成份標(biāo)識(shí)符(Identifier):用戶用來(lái)標(biāo)識(shí)包(package)、類(class)、接口(interface)、對(duì)象(object)、成員變量(field)、方法(method)、局部變量(localvariable)等語(yǔ)法成份的有效字符序列。

1.1Java標(biāo)識(shí)符461.Java語(yǔ)法成份Java標(biāo)識(shí)符的命名規(guī)則如下:標(biāo)識(shí)符是字母、下劃線、$、數(shù)字組成的字符混合序列,不能以數(shù)字開(kāi)頭。不能用Java的關(guān)鍵字或保留字作標(biāo)識(shí)符。Java標(biāo)識(shí)符區(qū)分大小寫。出于兼容性考慮,標(biāo)識(shí)符中盡量不要使用漢字。

下面哪一個(gè)是正確的標(biāo)識(shí)符?A:break B:default C:_object D:a-class1.1Java標(biāo)識(shí)符471.Java語(yǔ)法成份命名慣例如下:包名應(yīng)為名詞或名詞性短語(yǔ),全部小寫。類名、接口名應(yīng)為名詞或名詞性短語(yǔ),各單詞首字母大寫。方法名和變量名應(yīng)為動(dòng)詞或動(dòng)賓短語(yǔ),第一個(gè)單詞首字母小寫,其余各單詞首字母大寫。常量名應(yīng)全部大寫。1.1Java標(biāo)識(shí)符481.Java語(yǔ)法成份關(guān)鍵字是Java語(yǔ)言系統(tǒng)使用的標(biāo)識(shí)符,全部采用小寫字母,有特定的語(yǔ)法含義,不能用作標(biāo)識(shí)符。Java語(yǔ)言共有50個(gè)關(guān)鍵字,其中const和goto作為保留字。1.2關(guān)鍵字和保留字491.Java語(yǔ)法成份關(guān)鍵字是學(xué)習(xí)Java語(yǔ)言的主線,幾乎涉及Java語(yǔ)言的方方面面,下面分類介紹如下:訪問(wèn)權(quán)限修飾符:public(公共的)、protected(受保護(hù)的)、private(私有)。類/方法/變量修飾符:abstract(抽象)、final(最終的)、class(類)、enum(枚舉)、interface(接口)、extends(擴(kuò)展)、implements(實(shí)現(xiàn))、new(新建)、static(靜態(tài))、strictfp(嚴(yán)格浮點(diǎn))、synchronized(同步)、transient(短暫的)、volatile(不穩(wěn)定的)、native(本地的)。1.2關(guān)鍵字和保留字501.Java語(yǔ)法成份流程控制語(yǔ)句:if…else…、switch…case…default…finally、for、while、do…while、break、continue、return。異常處理:try…catch…finally、throw、throws。包語(yǔ)句:import、package?;緮?shù)據(jù)類型:byte、short、int、long、float、double、char、boolean(布爾)、void。引用類型變量:super、this。其它:instanceof

。1.2關(guān)鍵字和保留字511.Java語(yǔ)法成份Java分隔符要求用英文半角字符??崭瘢╯pace):主要用于關(guān)鍵字、標(biāo)識(shí)符之間。制表符(tab):常用于代碼縮進(jìn),一般設(shè)置為四個(gè)空格;小數(shù)點(diǎn)(DecimalPoint):用于包路徑的分隔符(用在包和包、包和類、類和方法、對(duì)象和方法、類和屬性、對(duì)象和屬性等成份之間)。分號(hào)(Semicolon):每條Java語(yǔ)句以;結(jié)束。Java允許將一個(gè)長(zhǎng)語(yǔ)句寫到多行中去,但是前提不不能斷開(kāi)關(guān)鍵字和String常量。1.3分隔符521.Java語(yǔ)法成份{}

:用于定義類體、方法體、語(yǔ)句塊、數(shù)組靜態(tài)初始化等成份。[]:用于數(shù)組的定義和數(shù)組元素的引用。():用于方法的定義或方法的調(diào)用。雙引號(hào)””:用于字符串String常量中。單引號(hào)’’:用于字符型常量中。1.3分隔符531.Java語(yǔ)法成份注釋(Comment):程序中的說(shuō)明性文字(程序的功能、結(jié)構(gòu)、版權(quán)等信息),增強(qiáng)程序的可讀性和易維護(hù)性,有三種形式://...:?jiǎn)涡凶⑨尅?*...*/:多行注釋,注釋內(nèi)容可以換行,可以嵌套單行注釋,但多行注釋不能嵌套。/**...*/:文檔注釋,會(huì)被Javadoc.exe文檔工具讀取,生成標(biāo)準(zhǔn)的Html幫助文檔。1.4注釋541Java語(yǔ)法成份2Java數(shù)據(jù)類型3數(shù)據(jù)的輸入和輸出4我們一起來(lái)編程學(xué)習(xí)提綱552.數(shù)據(jù)類型數(shù)據(jù)類型決定了數(shù)據(jù)的表示方式、定義了數(shù)據(jù)的集合以及在這個(gè)集合上可以進(jìn)行的運(yùn)算。562.Java數(shù)據(jù)類型Java整數(shù)類型根據(jù)字節(jié)長(zhǎng)度和取值范圍分為:byte、short、int、long四種。2.1整數(shù)類型572.Java數(shù)據(jù)類型整型常量可以十六進(jìn)制、十進(jìn)制、八進(jìn)制、二進(jìn)制的形式寫出。很長(zhǎng)的數(shù)字可讀性不好,從JDK1.7開(kāi)始支持下劃線分隔。變量定義語(yǔ)句:數(shù)據(jù)類型變量名=初值;2.1整數(shù)類型582.Java數(shù)據(jù)類型Java浮點(diǎn)類型包括:float(單精度浮點(diǎn)數(shù))、double(雙精度浮點(diǎn)數(shù))兩種。

float類型占32bits,用8bits存儲(chǔ)小數(shù)位。

double類型占64bits,用16bits存儲(chǔ)小數(shù)位。浮點(diǎn)型有兩種表示形式:小數(shù)形式:12.37F,-0.5234D指數(shù)形式:2.5E4,2.1E-7注意:浮點(diǎn)型常量默認(rèn)為double,如果要指定單精度浮點(diǎn)數(shù)類型請(qǐng)?jiān)诟↑c(diǎn)數(shù)后加F(f)。

2.2浮點(diǎn)類型592.Java數(shù)據(jù)類型Java采用雙字節(jié)的Unicode編碼,取值范圍0-65535。Unicode字符集的前128個(gè)字符與ASCII字符集完全相同。字符型常量可采用以下四種表示形式:?jiǎn)我?hào)括起來(lái)的單個(gè)字符,如'A'、'中'。轉(zhuǎn)義字符:以\開(kāi)頭的控制字符,如制表符'\t'、換行符'\n'。'\XXX':如'\123',3位八進(jìn)制Unicode編碼要求在0-255之間。'\uXXXX':如'\u1234',4位十六進(jìn)制Unicode編碼。2.3字符類型602.Java數(shù)據(jù)類型【編程實(shí)踐】三個(gè)應(yīng)用示例:可以使用強(qiáng)制類型轉(zhuǎn)換得到指定字符的Unicode編碼,如:(int)'A'??梢酝ㄟ^(guò)以下方式得到指定Unicode編碼(0-65535之間)對(duì)應(yīng)的字符:(char)65或'\u2666'。在算術(shù)表達(dá)式中,char型常量經(jīng)常自動(dòng)轉(zhuǎn)換為short的Unicode編碼參加運(yùn)算。

2.3字符類型612.Java數(shù)據(jù)類型布爾常量只有兩種取值:true和false,長(zhǎng)度為1Byte。關(guān)系表達(dá)式和邏輯表達(dá)式的運(yùn)算結(jié)果為布爾類型。2.4布爾類型622.Java數(shù)據(jù)類型Java語(yǔ)言的數(shù)據(jù)類型轉(zhuǎn)換包括基本數(shù)據(jù)類型轉(zhuǎn)換和引用類型的轉(zhuǎn)換,這里主要討論基本數(shù)據(jù)類型轉(zhuǎn)換,引用類型的轉(zhuǎn)換請(qǐng)參照后面相關(guān)內(nèi)容。1.自動(dòng)隱含的類型轉(zhuǎn)換:要求類型兼容,在機(jī)器中占位少的類型向占位多的類型可以自動(dòng)轉(zhuǎn)換。注意:char在算術(shù)表達(dá)式中自動(dòng)轉(zhuǎn)換為無(wú)符號(hào)short類型。2.5數(shù)據(jù)類型轉(zhuǎn)換byteshortintlongfloatdoublechar632.Java數(shù)據(jù)類型2.表達(dá)式類型轉(zhuǎn)換:Java整型、浮點(diǎn)型、字符型數(shù)據(jù)可以混合運(yùn)算,在運(yùn)算之前,不同類型的數(shù)據(jù)先轉(zhuǎn)化為同一種類型然后再進(jìn)行計(jì)算。3.強(qiáng)制轉(zhuǎn)換:指從在機(jī)器中占位多的類型向占位少的類型方向轉(zhuǎn)換,這種轉(zhuǎn)換可能導(dǎo)致計(jì)算精度的下降和數(shù)據(jù)溢出(Overflow)。語(yǔ)法格式:(低級(jí)數(shù)據(jù)類型)高級(jí)類型數(shù)據(jù)2.5數(shù)據(jù)類型轉(zhuǎn)換642.Java數(shù)據(jù)類型Java語(yǔ)言保留了八種基本數(shù)據(jù)類型(不攜帶屬性,沒(méi)有方法可調(diào)用),其它都是引用類型。與此同時(shí)Java語(yǔ)言也為八種基本數(shù)據(jù)類型提供了相應(yīng)的包裝類(WrapperClass)。對(duì)象包裝類以對(duì)象的方式提供了很多實(shí)用方法和常量。2.6基本數(shù)據(jù)類型的對(duì)象包裝類基本數(shù)據(jù)類型對(duì)象包裝類byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean652.Java數(shù)據(jù)類型Java類庫(kù),又被稱為JDKAPI(ApplicationProgrammingInterface,應(yīng)用程序編程接口)。開(kāi)發(fā)Java應(yīng)用程序就像搭積木一樣,我們可以編寫自己的類和方法,也可以調(diào)用Java類庫(kù)中的類和方法,可以調(diào)用第三方類庫(kù)中的類和方法。API在線幫助文檔:/en/java/javase/11/docs/api/index.html2.6基本數(shù)據(jù)類型的對(duì)象包裝類662.Java數(shù)據(jù)類型CHM版API幫助文檔:英文版JDK1.6EN.chm:離線查詢,檢索功能更為強(qiáng)大。中文版JDK1.6CN.chm:翻譯質(zhì)量一般,僅供對(duì)照參考;只能按照包路徑來(lái)查找類和方法。調(diào)用類庫(kù)中的方法分為以下幾步:1.將第三方j(luò)ar文件復(fù)制到JavaProject中,并加入到BuildPath;(Java類庫(kù)可以忽略本步驟)2.6基本數(shù)據(jù)類型的對(duì)象包裝類672.Java數(shù)據(jù)類型2.閱讀API幫助文檔,查出方法的相關(guān)信息:所在的包、類,方法的功能和定義;明確是類方法還是對(duì)象方法?

3.用import語(yǔ)句引入指定包中的類。4.方法和變量的訪問(wèn)。類方法或類變量的調(diào)用:類名.方法名(實(shí)參數(shù));類名.變量名;對(duì)象方法或?qū)ο笞兞康恼{(diào)用:類對(duì)象名=new構(gòu)造方法(實(shí)參數(shù));對(duì)象名.方法名(實(shí)參數(shù));對(duì)象名.變量名;2.6基本數(shù)據(jù)類型的對(duì)象包裝類682.Java數(shù)據(jù)類型【編程實(shí)踐】我們以Byte和Integer類為例,講解一下兩個(gè)類常用方法和變量的應(yīng)用。publicstaticfinalintMAX_VALUEpublicstaticfinalintMIN_VALUEpublicstaticStringtoBinaryString(inti)publicstaticStringtoOctalString?(inti)publicstaticStringtoHexString(inti)2.6基本數(shù)據(jù)類型的對(duì)象包裝類691Java語(yǔ)法成份2Java數(shù)據(jù)類型3數(shù)據(jù)的輸入和輸出4我們一起來(lái)編程學(xué)習(xí)提綱703.Java數(shù)據(jù)的輸入和輸出System.out代表標(biāo)準(zhǔn)輸出設(shè)備(顯示器)。System.out.println方法可以將提示信息輸出到DOS命令行或Eclipse中的控制臺(tái)Console。

//先計(jì)算括號(hào)中表達(dá)式的值,然后輸出結(jié)果但不回車System.out.print(表達(dá)式1+表達(dá)式2+……);//先計(jì)算括號(hào)中表達(dá)式的值,然后輸出結(jié)果并不回車System.out.println(表達(dá)式1+表達(dá)式2+……);//代表回車換行System.out.println();3.1數(shù)據(jù)在控制臺(tái)上的輸出713.Java數(shù)據(jù)的輸入和輸出Scanner類是一個(gè)可以使用正則表達(dá)式來(lái)解析基本類型和字符串的簡(jiǎn)單文本掃描器。調(diào)用Scanner對(duì)象的haveNext()來(lái)循環(huán)判斷是否還有用戶輸入,可以調(diào)用nextByte()、nextShort()、nextInt()、nextLong()來(lái)讀取整數(shù)數(shù)據(jù),用nextDouble()、nextFloat()來(lái)讀取浮點(diǎn)類型數(shù)據(jù),用nextLine()來(lái)讀取String類型數(shù)據(jù)。

3.2用Scanner實(shí)現(xiàn)鍵盤數(shù)據(jù)的輸入723.Java數(shù)據(jù)的輸入和輸出printf方法提供比println()方法更加強(qiáng)大的輸出數(shù)據(jù)控制功能。語(yǔ)法格式:publicPrintStreamprintf(Stringformat,Object...args)format格式控制部分,語(yǔ)法格式如下:%[參數(shù)索引$][對(duì)齊標(biāo)志][總場(chǎng)寬][.小數(shù)位數(shù)]數(shù)據(jù)類型3.3用printf()實(shí)現(xiàn)數(shù)據(jù)的輸出733.Java數(shù)據(jù)的輸入和輸出參數(shù)索引:指定輸出數(shù)據(jù)的位置(1-n)。例如2$代表args中第2個(gè)表達(dá)式,缺省時(shí)%和后面的表達(dá)式一一對(duì)應(yīng)。對(duì)齊標(biāo)志:指定當(dāng)總場(chǎng)寬大于數(shù)據(jù)的長(zhǎng)度時(shí)輸出數(shù)據(jù)的對(duì)齊方式。缺省時(shí)右對(duì)齊,負(fù)號(hào)時(shí)為左對(duì)齊。總場(chǎng)寬.小數(shù)位數(shù):指定輸出數(shù)據(jù)的總場(chǎng)寬和數(shù)值型數(shù)據(jù)的小數(shù)位數(shù),例如:%6.2f代表總場(chǎng)寬6位、小數(shù)位2位,%.2f代表總場(chǎng)寬按實(shí)際長(zhǎng)度、小數(shù)位2位。3.3用printf()實(shí)現(xiàn)數(shù)據(jù)的輸出743.Java數(shù)據(jù)的輸入和輸出數(shù)據(jù)類型:用一個(gè)字符代表被格式化數(shù)據(jù)的類型:d(Decimal)對(duì)應(yīng)十進(jìn)制整型數(shù)據(jù)o(Octal)對(duì)應(yīng)八進(jìn)制整型數(shù)據(jù)x(heX)對(duì)應(yīng)十六進(jìn)制整型數(shù)據(jù)c(Char)對(duì)應(yīng)字符型數(shù)據(jù)f(Float)對(duì)應(yīng)小數(shù)類型數(shù)據(jù)(float和double)s(String)對(duì)應(yīng)字符串(String)。3.3用printf()實(shí)現(xiàn)數(shù)據(jù)的輸出753.Java數(shù)據(jù)的輸入和輸出【編程實(shí)踐】%[參數(shù)索引$][對(duì)齊標(biāo)志][總場(chǎng)寬][.小數(shù)位數(shù)]數(shù)據(jù)類型3*5=15E=2.72 PI=3.14163.3用printf()實(shí)現(xiàn)數(shù)據(jù)的輸出761Java語(yǔ)法成份2Java數(shù)據(jù)類型3數(shù)據(jù)的輸入和輸出4我們一起來(lái)編程學(xué)習(xí)提綱774.我們一起來(lái)編程【編程任務(wù)】從鍵盤上輸入一個(gè)攝氏溫度C,輸出對(duì)應(yīng)的華氏溫度F。背景知識(shí):攝氏溫度:冰點(diǎn)時(shí)溫度為0攝氏度,沸點(diǎn)為100攝氏度。華氏溫度把冰點(diǎn)溫度定為32華氏度,沸點(diǎn)為212華氏度。攝氏溫度(C)與華氏溫度(F)的換算式是:F=(9*C)/5+32。

4.1溫度轉(zhuǎn)換敬請(qǐng)批評(píng)指正,謝謝!2023年第3周Java語(yǔ)言基礎(chǔ)二801運(yùn)算符和表達(dá)式2Java流程控制語(yǔ)句3Java數(shù)組4我們一起來(lái)編程學(xué)習(xí)提綱811.運(yùn)算符和表達(dá)式821.運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符包括+、-、*、/、++、--、%(取余)?!局攸c(diǎn)說(shuō)明】++和--:i=i+1;可以寫成:i++;i=i-1;可以寫成:i--;/:當(dāng)除數(shù)和被除數(shù)都是整數(shù)類型時(shí),商自動(dòng)取整。請(qǐng)說(shuō)出下面語(yǔ)句的運(yùn)行結(jié)果:1.1算術(shù)運(yùn)算符831.運(yùn)算符和表達(dá)式+:正負(fù)號(hào)中的正號(hào);算術(shù)運(yùn)算中的加法;字符串表達(dá)式中的連接操作。請(qǐng)說(shuō)出下面語(yǔ)句的運(yùn)行結(jié)果1.1算術(shù)運(yùn)算符841.運(yùn)算符和表達(dá)式【編程實(shí)踐】如何用/和%將345的百位、十位、個(gè)位數(shù)分離出來(lái)?1.1算術(shù)運(yùn)算符851.運(yùn)算符和表達(dá)式

關(guān)系運(yùn)算符用于將兩個(gè)數(shù)值或變量進(jìn)行比較,結(jié)果是一個(gè)布爾值。關(guān)系運(yùn)算符包括:<、<=、>、>=、==、!=。注意:=是賦值運(yùn)算符,==是關(guān)系運(yùn)算符,即相等。

1.2關(guān)系運(yùn)算符861.運(yùn)算符和表達(dá)式

邏輯運(yùn)算符包括與&、或|、短路與&&、短路或||、取反運(yùn)算符!、異或運(yùn)算符^。異或運(yùn)算是相同為false,不同為true。1.3邏輯運(yùn)算符871.運(yùn)算符和表達(dá)式注意:&、|用在整數(shù)類型(byte、short、char、int、long)之間時(shí)是位運(yùn)算符,用在布爾類型之間是邏輯運(yùn)算符。&(與)和&&(短路與)之間的區(qū)別:短路與判斷第一個(gè)條件為false,那么第二個(gè)條件不用再計(jì)算和判斷。|(或)和||(短路或)之間的區(qū)別:短路或判斷第一個(gè)條件為true,第二個(gè)條件不再計(jì)算和判斷。1.3邏輯運(yùn)算符881.運(yùn)算符和表達(dá)式結(jié)合以下示例程序程理解與和短路與,或與短路或的區(qū)別。1.3邏輯運(yùn)算符891.運(yùn)算符和表達(dá)式Java中采用補(bǔ)碼形式進(jìn)行機(jī)器數(shù)的存儲(chǔ)。位運(yùn)算符只能對(duì)byte、short、char、int、long類型的數(shù)據(jù)進(jìn)行,低于int型的操作數(shù)自動(dòng)轉(zhuǎn)換為int。Java位運(yùn)算符主要包括:~(按位取反)、&(按位與)、|(按位或)、^(按位異或)、~(按位取反)、<<(左移位)、>>(帶符號(hào)位右移位)、>>>:(不帶符號(hào)右移位)。1.3位運(yùn)算符901.運(yùn)算符和表達(dá)式舉例如下:為簡(jiǎn)單起見(jiàn),計(jì)算機(jī)字長(zhǎng)暫定為8位,實(shí)際上計(jì)算機(jī)字長(zhǎng)可能32位或64位:inta=0b0010_0111;//39,最高位為符號(hào)位,0代表+,1代表-。intb=0b0111_1101;//125,最高位為符號(hào)位,0代表+,1代表-1.3位運(yùn)算符911.運(yùn)算符和表達(dá)式按位與、按位或示例如下:1.3位運(yùn)算符921.運(yùn)算符和表達(dá)式按位取反和按位異或運(yùn)算示例如下:1.3位運(yùn)算符931.運(yùn)算符和表達(dá)式移位運(yùn)算示例如下:a=71.3位運(yùn)算符941.運(yùn)算符和表達(dá)式語(yǔ)法格式:數(shù)據(jù)類型變量名=表達(dá)式;注意:先計(jì)算表達(dá)式,后賦值。注意等號(hào)==和賦值號(hào)=不要混淆。等號(hào)左右的數(shù)據(jù)類型相容,否則需要強(qiáng)制轉(zhuǎn)換。*=/=-=+=:相當(dāng)于先進(jìn)行*/+

-,后進(jìn)行賦值運(yùn)算。例如:inti=5;i*=5;//i=i*51.4賦值運(yùn)算符951.運(yùn)算符和表達(dá)式條件運(yùn)算符相當(dāng)于一個(gè)簡(jiǎn)化的if語(yǔ)句。語(yǔ)法格式:邏輯表達(dá)式1?表達(dá)式2:表達(dá)式3功能:先判斷邏輯表達(dá)式1的值,若為true,則結(jié)果為表達(dá)式2的值,否則取表達(dá)式3值。1.5條件運(yùn)算符961.運(yùn)算符和表達(dá)式Java運(yùn)算符的優(yōu)先級(jí)從大到小:自增自減運(yùn)算、算術(shù)運(yùn)算符、位運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符。優(yōu)先級(jí)相同時(shí)自左向右計(jì)算。

容易混淆時(shí)請(qǐng)通過(guò)加小括號(hào)來(lái)準(zhǔn)確地反映自己的意圖。1.6運(yùn)算符的優(yōu)先級(jí)971.運(yùn)算符和表達(dá)式1.6運(yùn)算符的優(yōu)先級(jí)981.運(yùn)算符和表達(dá)式

表達(dá)式是用運(yùn)算符將操作數(shù)(常量、變量和方法等)連接起來(lái)有確定值符合Java語(yǔ)法規(guī)則的式子。算術(shù)表達(dá)式:以算術(shù)運(yùn)算符為主的表達(dá)式。關(guān)系表達(dá)式:以關(guān)系運(yùn)算符為主的表達(dá)式。邏輯表達(dá)式:以邏輯運(yùn)算符為主的表達(dá)式,如:(3>2)&(7<4)。1.7表達(dá)式991運(yùn)算符和表達(dá)式2Java流程控制語(yǔ)句3Java數(shù)組4我們一起來(lái)編程學(xué)習(xí)提綱1002.Java流程控制語(yǔ)句

Java語(yǔ)句是構(gòu)成程序的基本單元,可以對(duì)計(jì)算機(jī)發(fā)出操作指令。Java語(yǔ)句要求以;結(jié)束。Java語(yǔ)句包括:方法調(diào)用語(yǔ)句;表達(dá)式語(yǔ)句;復(fù)合語(yǔ)句:{…;…;};流程控制語(yǔ)句;包語(yǔ)句:package、import。其它語(yǔ)句。1012.Java流程控制語(yǔ)句順序結(jié)構(gòu)是三種結(jié)構(gòu)中最簡(jiǎn)單的一種,即語(yǔ)句按照書寫的順序依次執(zhí)行。順序結(jié)構(gòu)流程圖如下:2.1順序結(jié)構(gòu)1022.Java流程控制語(yǔ)句

分支結(jié)構(gòu)又稱為選擇結(jié)構(gòu),它將根據(jù)計(jì)算所得的表達(dá)式的值來(lái)判斷應(yīng)選擇執(zhí)行哪一個(gè)流程的分支。Java中提供的分支語(yǔ)句有if語(yǔ)句和switch語(yǔ)句。

2.2分支結(jié)構(gòu)1032.Java流程控制語(yǔ)句

if語(yǔ)句能根據(jù)條件從兩個(gè)分支中選擇一個(gè)執(zhí)行。利用if語(yǔ)句的嵌套可以實(shí)現(xiàn)從多個(gè)分支中選擇一個(gè)執(zhí)行。if語(yǔ)句的語(yǔ)法格式如下:

if(條件表達(dá)式){……}[else{ ……}]

2.2分支結(jié)構(gòu)1042.Java流程控制語(yǔ)句

【編程任務(wù)】從鍵盤輸入一個(gè)人的體重(公斤)和身高(米),計(jì)算其BMI指數(shù)并輸出體重狀態(tài)。體重指標(biāo)BMI(BodyMassIndex)=體重/身高的平方(kg/㎡)BMI<18.5:偏廋;18.5≤BMI<24:正常;24≤BMI<27:偏胖;27≤BMI<30:肥胖;BMI≥30:重度肥胖,

2.2分支結(jié)構(gòu)1052.Java流程控制語(yǔ)句switch語(yǔ)句用于多分支選擇結(jié)構(gòu)。語(yǔ)法格式:switch(表達(dá)式){ case常量1:語(yǔ)句1;break; case常量2:語(yǔ)句2;break;.............. case常量n:語(yǔ)句n;break;[default:其他語(yǔ)句;break;]}2.2分支結(jié)構(gòu)1062.Java流程控制語(yǔ)句2.2分支結(jié)構(gòu)1072.Java流程控制語(yǔ)句循環(huán)結(jié)構(gòu)是在一定條件下反復(fù)執(zhí)行一段語(yǔ)句的流程結(jié)構(gòu)。包括for、while、do…while三個(gè)語(yǔ)句。

1.for語(yǔ)句一般用于已知循環(huán)次數(shù)的情況下。for語(yǔ)句特點(diǎn):先判斷,后執(zhí)行;循環(huán)體執(zhí)行次數(shù)>=0;當(dāng)循環(huán)條件為真時(shí)執(zhí)行。for語(yǔ)句的語(yǔ)法格式如下:for(設(shè)定循環(huán)變量初值;循環(huán)條件;修改循環(huán)變量表達(dá)式){

循環(huán)體代碼}

2.3循環(huán)結(jié)構(gòu)1082.Java流程控制語(yǔ)句說(shuō)明:利用for語(yǔ)句嵌套可以實(shí)現(xiàn)多重循環(huán)。for語(yǔ)句簡(jiǎn)明示意如下:2.3循環(huán)結(jié)構(gòu)1092.Java流程控制語(yǔ)句

【編程實(shí)踐】

從1循環(huán)到100,步長(zhǎng)為1從100循環(huán)到1,步長(zhǎng)為-1輸出100以內(nèi)所有的偶數(shù)/奇數(shù)的和:累加器2.3循環(huán)結(jié)構(gòu)1102.Java流程控制語(yǔ)句2.while語(yǔ)句while語(yǔ)句用于已知循環(huán)條件的情況。while語(yǔ)句的特點(diǎn):先判斷,后執(zhí)行;循環(huán)體執(zhí)行次數(shù)>=0;當(dāng)循環(huán)條件為真時(shí)執(zhí)行。語(yǔ)法格式如下:[循環(huán)前初始化語(yǔ)句]while(循環(huán)條件){

循環(huán)體

[修改循環(huán)變量的表達(dá)式]}2.3循環(huán)結(jié)構(gòu)1112.Java流程控制語(yǔ)句【編程實(shí)踐】

從1循環(huán)到100,步長(zhǎng)為1從100循環(huán)到1,步長(zhǎng)為-1輸出100以內(nèi)所有的偶數(shù)/奇數(shù)的和:累加器2.3循環(huán)結(jié)構(gòu)1122.Java流程控制語(yǔ)句3.do…while語(yǔ)句

do...while語(yǔ)句是直到型循環(huán),特點(diǎn):先執(zhí)行,后判斷;循環(huán)體執(zhí)行次數(shù)>=1;當(dāng)循環(huán)條件為真時(shí)執(zhí)行。dowhile語(yǔ)句的語(yǔ)法格式如下:[循環(huán)前初始化語(yǔ)句]do{

循環(huán)體

[修改循環(huán)變量表達(dá)式]}while(循環(huán)條件)2.3循環(huán)結(jié)構(gòu)1132.Java流程控制語(yǔ)句1.break語(yǔ)句語(yǔ)法格式:break;break語(yǔ)句終止某個(gè)語(yǔ)句塊的執(zhí)行,跳轉(zhuǎn)到該語(yǔ)句塊后的第一個(gè)語(yǔ)句開(kāi)始執(zhí)行。break也可用在switch語(yǔ)句中。2.continue語(yǔ)句語(yǔ)法格式:continue;continue語(yǔ)句用于跳過(guò)某個(gè)循環(huán)語(yǔ)句塊的一次執(zhí)行,直接執(zhí)行下一次循環(huán)。2.3循環(huán)結(jié)構(gòu)1141運(yùn)算符和表達(dá)式2Java流程控制語(yǔ)句3Java數(shù)組4我們一起來(lái)編程學(xué)習(xí)提綱1153.數(shù)組為方便存儲(chǔ)一組同一數(shù)據(jù)類型的多個(gè)數(shù)據(jù),Java也提供了數(shù)組這個(gè)數(shù)據(jù)結(jié)構(gòu)。數(shù)組主要分為一維數(shù)組和二維數(shù)組。一維數(shù)組相當(dāng)于高中數(shù)學(xué)中的數(shù)列,二維數(shù)組相當(dāng)于線性代數(shù)中的矩陣。靈活使用數(shù)組和循環(huán)可以解決許多復(fù)雜的問(wèn)題。

3.1一維數(shù)組1163.數(shù)組一維數(shù)組的定義(動(dòng)態(tài)初始化)語(yǔ)法格式:數(shù)據(jù)類型[]數(shù)組名=new數(shù)組元素類型[元素個(gè)數(shù)];一維數(shù)組的定義(靜態(tài)初始化):在聲明一個(gè)數(shù)組的同時(shí)對(duì)數(shù)組的每個(gè)元素進(jìn)行賦值。語(yǔ)法格式:數(shù)據(jù)類型[]數(shù)組名={初值表};【編程實(shí)踐】一維數(shù)組的基本技巧,如數(shù)組的定義、數(shù)組元素初始化、數(shù)組遍歷、數(shù)組元素輸出等。3.1一維數(shù)組1173.數(shù)組二維數(shù)組的定義(動(dòng)態(tài)初始化)語(yǔ)法格式:數(shù)據(jù)類型[][]數(shù)組名=new數(shù)組元素類型[元素個(gè)數(shù)][元素個(gè)數(shù)];二維數(shù)組的定義(靜態(tài)初始化):在聲明一個(gè)數(shù)組的同時(shí)對(duì)數(shù)組的每個(gè)元素進(jìn)行賦值。語(yǔ)法格式:數(shù)據(jù)類型[][]數(shù)組名={{初值表},{初值表},{初值表},……}例如:int[][]a={{1,2,3,4},{5,6},{7,8,9}};3.2二維數(shù)組1183.數(shù)組通過(guò)“數(shù)組名[行下標(biāo)][列下標(biāo)]”的方式來(lái)訪問(wèn)二維數(shù)組的元素。數(shù)組的長(zhǎng)度:a.length代表二維數(shù)組的行數(shù),第0行中元素的個(gè)數(shù)如何表示呢:a[0].length,其它行依次類推。3.2二維數(shù)組1194.編程實(shí)踐【編程實(shí)踐】二維數(shù)組的基本技巧,如數(shù)組的定義、數(shù)組元素初始化、數(shù)組遍歷、數(shù)組元素輸出等。3.2二維數(shù)組1204.編程實(shí)踐java.util.Arrays類提供了一些用來(lái)操作數(shù)組的實(shí)用方法。publicstaticvoidfill(double[]a,doubleval):用指定值val去填充數(shù)組的每一個(gè)元素:publicstaticvoidsort(double[]a):對(duì)指定的double數(shù)組按升序進(jìn)行排序。publicstaticStringtoString(double[]a):將數(shù)組直接轉(zhuǎn)換成一個(gè)字符串,這樣我們就不用for語(yǔ)句遍歷數(shù)組了。publicstaticint[]copyOfRange(int[]original,intfrom,intto)3.3數(shù)組工具類(Arrays)1214.編程實(shí)踐【編程實(shí)踐】利用Arrays類中的方法實(shí)現(xiàn):一維數(shù)組的填充、一維數(shù)組排序、一維數(shù)組輸出、一維數(shù)組部分元素的復(fù)制等。intia[]={13,2,30,5,34,908,-5,1200,234,9};3.3數(shù)組工具類(Arrays)1221運(yùn)算符和表達(dá)式2Java流程控制語(yǔ)句3Java數(shù)組4我們一起來(lái)編程學(xué)習(xí)提綱1234.我們一起來(lái)編程4.1九九乘法表(Nine.java)1244.我們一起來(lái)編程【編程任務(wù)】卡拉OK比賽,N個(gè)評(píng)委為歌手打分,規(guī)則:去掉一個(gè)最高分,一個(gè)最低分,然后取平均作為歌手的最終得分。定義一個(gè)常量表示評(píng)委的個(gè)數(shù):N=5;定義一個(gè)長(zhǎng)度為N的數(shù)組用來(lái)存放評(píng)委的N個(gè)成績(jī);循環(huán)N次從鍵盤上輸入N個(gè)評(píng)委的成績(jī)并保存到數(shù)組,順便求和sum;對(duì)數(shù)組進(jìn)行排序。sum減去一個(gè)最高分,減去一個(gè)最低分,求平均。輸出歌手的最終得分。4.2卡拉OK問(wèn)題(OK.java)敬請(qǐng)批評(píng)指正,謝謝!2023年第4周

面向?qū)ο蠡A(chǔ)1271面向?qū)ο?類的定義3對(duì)象實(shí)例化與銷毀4定義包和引入類學(xué)習(xí)提綱5讓我們一起來(lái)編程1281.面向?qū)ο竺嫦驅(qū)ο笫且环N對(duì)現(xiàn)實(shí)世界理解和抽象的方法。在面向?qū)ο笱壑校f(wàn)事萬(wàn)物皆為對(duì)象。如同事物一樣,每個(gè)對(duì)象都有自己的屬性,具備一些行為;對(duì)象之間也存在各種各樣的聯(lián)系,也可以進(jìn)行通信。面向?qū)ο罂朔嗣嫦蜻^(guò)程的缺點(diǎn),達(dá)到了軟件工程的三個(gè)主要目標(biāo):可重用性、靈活性和擴(kuò)展性。在Java語(yǔ)言中,編程的基本單位是類,類可以實(shí)例化成多個(gè)對(duì)象。面向?qū)ο蟮母拍畎ǎ悍庋b、繼承、多態(tài)、類和對(duì)象、接口、包、屬性、方法、構(gòu)造方法、修飾符、上溯下溯造型、泛型等。1.1什么是面向?qū)ο螅?291.面向?qū)ο竺嫦驅(qū)ο蟮乃拇筇卣鳎撼橄蟆⒎庋b、繼承和多態(tài)。1.抽象:指從眾多的事物中舍棄個(gè)別的、非本質(zhì)的部分,提煉出我們所關(guān)注的、共同的、本質(zhì)的部分的過(guò)程。2.封裝:在Java中,類封裝了屬性、方法、構(gòu)造方法、語(yǔ)句塊、內(nèi)部類等成員,可以通過(guò)權(quán)限修飾符來(lái)控制外部對(duì)類成員的可訪問(wèn)性,隱藏其實(shí)現(xiàn)細(xì)節(jié)。1.2面向?qū)ο蟮乃拇筇卣?301.面向?qū)ο竺嫦驅(qū)ο蟮乃拇筇卣鳎撼橄?、封裝、繼承和多態(tài)。1.抽象:指從眾多的事物中舍棄個(gè)別的、非本質(zhì)的部分,提煉出我們所關(guān)注的、共同的、本質(zhì)的部分的過(guò)程。2.封裝:在Java中,類封裝了屬性、方法、構(gòu)造方法、語(yǔ)句塊、內(nèi)部類等成員,可以通過(guò)權(quán)限修飾符來(lái)控制外部對(duì)類成員的可訪問(wèn)性,隱藏其實(shí)現(xiàn)細(xì)節(jié)。1.2面向?qū)ο蟮乃拇筇卣?311.面向?qū)ο?.繼承:以已有的類為基礎(chǔ)來(lái)創(chuàng)建一個(gè)新的子類,子類繼承父類的所有特性,并可以在此基礎(chǔ)上擴(kuò)充自己的特性,從而構(gòu)造出更為復(fù)雜的類型。繼承很好地解決了軟件的可重用性問(wèn)題。4.多態(tài):指同一個(gè)實(shí)體同時(shí)具有多種形式,主要表現(xiàn)為方法的重載、方法的覆蓋、對(duì)象的多態(tài)等三種形式。通過(guò)多態(tài),就能對(duì)“通用情況”編程,而不是對(duì)“特定情況”進(jìn)行編程。方法的重載通過(guò)查閱JDK

API幫助文檔可以直觀地理解。1.2面向?qū)ο蟮乃拇筇卣?321.面向?qū)ο?/p>

【示例程序3-1】自定義日期類(MyDate.java)功能描述:MyDate類有年、月、日三個(gè)私有屬性;提供了無(wú)參和包含全部屬性的構(gòu)造方法,構(gòu)造方法的重載;私有屬性提供了Getter和Setter方法以供外界讀??;方法的覆蓋。【示例程序3-2】類繼承應(yīng)用示例(EmployeeTeacherTest.java)功能描述:職工類有身份證號(hào)、姓名、部門三個(gè)屬性,工作方法。教師類繼承了職工類,在職工類的基礎(chǔ)上增加了課時(shí)屬性和上課方法,并進(jìn)行了測(cè)試。1.2面向?qū)ο蟮乃拇筇卣?331面向?qū)ο?類的定義3對(duì)象實(shí)例化與銷毀4定義包和引入類學(xué)習(xí)提綱5讓我們一起來(lái)編程1342.類的定義類(Class)是對(duì)一類相似事物的描述,側(cè)重對(duì)同類事物的共性進(jìn)行抽象、概括、歸納。對(duì)象(Object)也叫實(shí)例(Instance),萬(wàn)事萬(wàn)物皆為對(duì)象。對(duì)象是信息系統(tǒng)必須覺(jué)察到的問(wèn)題域中的人或事物的抽象,突出個(gè)性、特殊。在Java中,對(duì)象是通過(guò)類的實(shí)例化來(lái)創(chuàng)建的。一個(gè)類可以實(shí)例化多個(gè)該類的對(duì)象,因此,類和對(duì)象之間是一對(duì)多的關(guān)系。1352.類的定義Java類的語(yǔ)法格式如下:[類修飾符]class<類名>[extends<父類名>][implements<接口列表>]{[初始化語(yǔ)句塊][成員變量][構(gòu)造方法][成員方法][內(nèi)部類]……}2.1類的定義1362.類的定義1.類修飾符(modifier)說(shuō)明類只有兩個(gè)權(quán)限控制符:public或缺省。用abstract修飾的類叫抽象類。抽象類只能被繼承,不能被實(shí)例化。用final修飾的類叫最終類,只能被實(shí)例化,不能被繼承。2.extends<父類>:用來(lái)指定要繼承的父類。3.implements<接口列表>:指定要實(shí)現(xiàn)的接口。一個(gè)類實(shí)現(xiàn)一個(gè)接口,即必須實(shí)現(xiàn)該接口中所有抽象方法,否則這個(gè)類只能是抽象類。2.1類的定義1372.類的定義4.Java類封裝了以下成員:成員變量(Variable)也稱為字段(Field)或?qū)傩裕ˋttribute):有static修飾的變量為類變量,描述類的靜態(tài)特征;沒(méi)有static修飾的變量為對(duì)象變量,描述對(duì)象的靜態(tài)特征。成員方法(Method),也稱為函數(shù)(Function):有static修飾的方法為類方法,描述類的動(dòng)態(tài)特征(行為);沒(méi)有static修飾的方法為對(duì)象方法,描述對(duì)象的動(dòng)態(tài)特征(行為)。2.1類的定義1382.類的定義構(gòu)造方法(Constructor):用于實(shí)例化對(duì)象。內(nèi)部類(InnerClass):在類體、方法體中定義的類。語(yǔ)句塊:分為有static修飾的靜態(tài)語(yǔ)句塊和沒(méi)有static修飾的非靜態(tài)語(yǔ)句塊。

【編程實(shí)踐】在俄羅斯方塊程序中找一下以上類的成員。2.1類的定義1392.類的定義成員變量指定義在類中方法外的變量或常量。成員變量的有效范圍是整個(gè)類,相當(dāng)于全局變量。語(yǔ)法格式如下:[成員變量修飾符]<數(shù)據(jù)類型>變量名[=初值];說(shuō)明:1.成員變量修飾符權(quán)限控制修飾符有public、protected、private三種,用來(lái)控制變量的可見(jiàn)性。2.2成員變量1402.類的定義類修飾符static:有static修飾的變量是類變量,否則是對(duì)象變量。常量修飾符final:有final修飾的變量是常量,只能賦值一次。2.成員變量的類型可以是八種基本數(shù)據(jù)類型,也可以是引用類型。3.類變量:類變量屬于類,當(dāng)類載入內(nèi)存時(shí)類變量生效,為該類的所有對(duì)象所共享。通過(guò)“類名.變量名”來(lái)訪問(wèn)類成員變量。4.對(duì)象變量:對(duì)象變量屬于對(duì)象。因此訪問(wèn)對(duì)象變量時(shí),需要先實(shí)例化該類的一個(gè)對(duì)象,然后通過(guò)“對(duì)象名.變量名”的方式來(lái)訪問(wèn)。5.我們一般將屬性設(shè)置為private,然后提供Getter和Setter方法作為存取數(shù)據(jù)的統(tǒng)一接口。2.2成員變量1412.類的定義語(yǔ)句(Statement)太多或部分語(yǔ)句需要反復(fù)調(diào)用時(shí),我們就需要將這些語(yǔ)句定義成方法(Method)了。方法是能完成一定數(shù)據(jù)處理功能、可以被反復(fù)調(diào)用的語(yǔ)句的集合。方法要先定義后使用。方法不能嵌套定義,但可以遞歸調(diào)用。在Java語(yǔ)言中方法必須在類中定義。在邏輯上方法要么屬于類,要么屬于對(duì)象。2.3成員方法的定義1422.類的定義方法的語(yǔ)法格式如下:[方法修飾符]<返回類型>方法名(形式參數(shù)列表)[throws異常列表]{......[return返回值;]}2.3成員方法的定義1432.類的定義說(shuō)明:1.方法修飾符說(shuō)明訪問(wèn)權(quán)限控制修飾符public、protected、private:決定方法的可見(jiàn)性。靜態(tài)修飾符static:有static修飾的方法是類方法,否則是對(duì)象方法。最終方法修飾符final:有final修飾的方法是最終方法,最終方法不能被覆蓋。抽象修飾符abstract:有abstract修飾的方法是抽象方法,抽象方法只有方法的定義,沒(méi)有方法的實(shí)現(xiàn)(方法體)。2.3成員方法的定義1442.類的定義2.返回值類型:可以是八種基本數(shù)據(jù)類型和引用類型,在方法體中必須用return語(yǔ)句返回?cái)?shù)據(jù),否則會(huì)出現(xiàn)編譯錯(cuò)誤。如果沒(méi)有返回值,請(qǐng)用void代替。3.return語(yǔ)句:用于返回?cái)?shù)據(jù)和終止方法的執(zhí)行。4.形式參數(shù)列表:方法調(diào)用時(shí)的實(shí)參必須和形參一一對(duì)應(yīng),類型相容。

2.3成員方法的定義1452.類的定義我們可以調(diào)用自己編寫的方法,也可以調(diào)用JDK類庫(kù)的方法和第三方提供的方法。在JDK文檔中詳細(xì)給出了每個(gè)方法的定義、形式參數(shù)、功能等說(shuō)明。類方法的調(diào)用:[包路徑.][類名.]方法名([實(shí)參表]);注意:當(dāng)用import語(yǔ)句引入其它包中的類后,包路徑可以省略;當(dāng)前類可以省略。對(duì)象方法的調(diào)用:先實(shí)例化一個(gè)對(duì)象,然后通過(guò)“對(duì)象名.方法名([實(shí)參表]);”的廣東來(lái)調(diào)用。注意:當(dāng)前對(duì)象可以省略。

實(shí)參數(shù)的個(gè)數(shù)、順序、類型要和形式參數(shù)一一對(duì)應(yīng),類型相容。2.4成員方法的調(diào)用1462.類的定義自然數(shù)n?。╪>1)階乘的定義有兩種:傳統(tǒng)定義:n!=1×2×3×…×n(n≥1)遞歸定義:n!=n×(n-1)!,1!=1(n≥1)有些問(wèn)題用遞歸思想來(lái)解決簡(jiǎn)單、直接、有效,用計(jì)算機(jī)編程實(shí)現(xiàn)也十分方便,易于理解,缺點(diǎn)是是內(nèi)存消耗大、效率較低。2.5成員方法的遞歸調(diào)用1472.類的定義【示例程序3-3】計(jì)算n的階乘(Factorial.java)功能描述:本程序演示了階乘的兩種實(shí)現(xiàn)方法:用循環(huán)結(jié)構(gòu)求n!的類方法;用遞歸調(diào)用求n!的對(duì)象方法,同時(shí)演示了類方法和對(duì)象如何調(diào)用。2.5成員方法的遞歸調(diào)用1482.類的定義Java語(yǔ)言中3個(gè)訪問(wèn)權(quán)限修飾符,四種可見(jiàn)范圍:private修飾的成員變量或方法的可見(jiàn)范圍為當(dāng)前類。子類只能繼承父類中所有非private的成員。沒(méi)有權(quán)限修飾符修飾的成員變量或方法的可見(jiàn)范圍為當(dāng)前包。protected修飾的成員變量或方法的可見(jiàn)范圍是當(dāng)前包及該類的子類,即可以被同一個(gè)包、該類的子類(可以不同包)的方法訪問(wèn)。public修飾的成員變量或方法可以被所有包中所有類中的方法訪問(wèn)。2.6訪問(wèn)權(quán)限控制符1491面向?qū)ο?類的定義3對(duì)象實(shí)例化與銷毀4定義包和引入類學(xué)習(xí)提綱5讓我們一起來(lái)編程1503.對(duì)象實(shí)例化與銷毀根據(jù)類創(chuàng)建對(duì)象的過(guò)程又被稱為對(duì)象的實(shí)例化,一般是通過(guò)調(diào)用構(gòu)造方法的方式來(lái)完成。構(gòu)造方法(Constructor)是Java類中一種特殊方法,用于實(shí)例化類的一個(gè)對(duì)象。構(gòu)造方法主要功能:1.為對(duì)象在堆內(nèi)存中分配內(nèi)存空間。2.成員變量初始化:數(shù)值類型變量(byte、short、int、long、float、double)初始化為0,boolean類型變量初始化為false,char類型變量初始化為’\0’

,引用類型變量初始化為null。3.1構(gòu)造方法的定義1513.對(duì)象實(shí)例化與銷毀定義構(gòu)造方法的語(yǔ)法格式如下:構(gòu)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論