Java程序設計案例教程 第2版 習題答案 習題5_第1頁
Java程序設計案例教程 第2版 習題答案 習題5_第2頁
Java程序設計案例教程 第2版 習題答案 習題5_第3頁
Java程序設計案例教程 第2版 習題答案 習題5_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PAGE1【習題5】一、選擇題DCAB二、填空題1、繼承性多態性2、類的成員變量3、類的成員方法4、構造方法三、簡答題1、什么是類?什么是對象?答:對象是系統中用來描述客觀事物的一個實體,它是構成系統的一個基本單位。類是相同屬性和行為的一組對象的集合。類是對象的模板,即類是對一組有相同數據和相同操作的對象的定義,一個類所包含的方法和數據描述一組對象的共同屬性和行為。2、簡述聲明類的語法格式。答:聲明類的語法格式如下:[類修飾符]class類名[extends基類][implements接口列表]{ [成員變量聲明] [構造方法定義] [成員方法定義]}說明:類修飾符[可選]:用于規定類的一些特殊性,比如訪問控制、抽象類等。類名:類的名字,類名一般首字母用大寫,其余用小寫,如果類名由多個單詞組成,則從每個單詞的首字母大寫。extends基類:表示新類由父類派生,Java中只支持單繼承。implements接口列表:表示實現接口。因Java中支持單繼承,但可以實現多個接口,為多重繼承軟件開發提供方便。類體:用花括號括起,類體中可有成員變量聲明、構造方法定義和成員方法定義。3、簡述Java類成員的訪問控制。答:訪問控制符同一個類中同一個包中不同包的子類不同包的非子類private可以訪問×××default(缺省)可以訪問可以訪問××protected可以訪問可以訪問可以訪問×public可以訪問可以訪問可以訪問可以訪問4、包的作用是什么,如果創建包,導入包?答:包是類、接口和其他包的集合,建包的目的是有效區分名字相同的類,不同Java源文件中的兩個類名字相同時,它們可以通過隸屬不同的包來區分。包的聲明格式:package包名;若類的訪問權限是public,則其他包的類可以引用該類,但引用前需導入包,導包的語句是:import包名.類名;四、編程題1、定義一個復數類Complex,復數的實部real與虛部image定義為私有數據成員。定義getters和setters方法訪問私有數據成員,再定義構造方法對實部與虛部進行初始化,定義公有成員方法show()顯示復數值。publicclassComplex{ privateintreal; privateintimage; publicintgetReal(){ returnreal; } publicvoidsetReal(intreal){ this.real=real; } publicintgetImage(){ returnimage; } publicvoidsetImage(intimage){ this.image=image; } publicComplex(){ } publicComplex(intreal,intimage){ this.real=real; this.image=image; } publicvoidshow(){ System.out.println(real+"+"+image+"i"); }}publicclassComplexTest{ publicstaticvoidmain(String[]args){ Complexc1=newComplex(5,6); c1.show(); }}2、編寫一個Book類,用于描述個人藏書,包含作者Author、書名Title、價格Price、出版社Publisher、出版年份PublishedYear五個屬性。然后編寫一個測試類BookTest,對Book類進行測試,輸出正確的屬性值。publicclassBook{ //作者、書名、價格、出版社、出版年份 privateStringauthor; privateStringtitle; privatefloatprice; privateStringpublisher; privateintpublishedYear; publicStringgetAuthor(){ returnauthor; } publicvoidsetAuthor(Stringauthor){ this.author=author; } publicStringgetTitle(){ returntitle; } publicvoidsetTitle(Stringtitle){ this.title=title; } publicfloatgetPrice(){ returnprice; } publicvoidsetPrice(floatprice){ this.price=price; } publicStringgetPublisher(){ returnpublisher; } publicvoidsetPublisher(Stringpublisher){ this.publisher=publisher; } publicintgetPublishedYear(){ returnpublishedYear; } publicvoidsetPublishedYear(intpublishedYear){ this.publishedYear=publishedYear; } }publicclassBookTest{ publicstaticvoidmain(String[]args){ Bookbook=newBook(); //孫瀏毅、Java寶典、98.00、電子工業出版社、2009 book.setAuthor("孫瀏毅"); book.setTitle("Java寶典"); book.setPrice(98.00F); book.setPublisher("電子工業出版社"); book.setPublishedYear(2009); System.out.println("圖書的信息是:"); System.out.println("作者:"+book.getAuthor()); System.out.println("書名:"+book.getTitle()); System.out.println("價格:"+book.getPrice()); System.out.println("出版社:"+book.getPublisher()); System.out.println("出版年份:"+book.getPublishedYear()); }}3、編寫一個UnitConversion類,封裝一些常用的單位轉換算法,其中兩個單位轉換是英寸和厘米的轉換,另一個是攝氏溫度和華氏溫度的轉換(轉換公式請自行查找資料)。要求該類象Math類一樣不可被繼承,也不可被實例化。然后編寫一個測試類UnitConversionTest,測試UnitConversion類是否能夠正常工作。finalpublicclassUnitConversion{ privateUnitConversion(){ } finalpublicstaticfloatf2C(floatf){ return(f-32)/1.8F; } finalpublicstaticfloatc2F(floatc){ returnc*1.8F+32.0F; } finalpublicstaticfloatinch2Cm(floatinch){ returninch*2.54F; } finalpublicstaticfloatcm2Inch(floatcm){ returncm/2.54F; }}publicclassUnitConversionTest{ publicstaticvoidmain(String[]args){ System.out.println("37攝氏度="+UnitConversion.c2F(37)+"華氏度"); System.out.println(

溫馨提示

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

評論

0/150

提交評論