




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Java程序設計第十章第十章回顧與作業(yè)點評回顧與作業(yè)點評關于多重循環(huán)語句,下列說法正確的是( )A多重循環(huán)指一個循環(huán)體內包含另一個完整的循環(huán)結構 B多重循環(huán)語句可以嵌套任意層次Cwhile、do-while和for循環(huán)不可以相互嵌套D在內層循環(huán)中執(zhí)行break語句,將跳出外層循環(huán)寫出運行結果 int i = 0; for (i = 0; i =18 & age=60)/判斷年齡判斷年齡System.out.println(name+“年齡為年齡為+age+“,價格為價格為20元元 );elseSystem.out.println(name + 的年齡為:的年齡為:+age+,免費,免費
2、);創(chuàng)建和使用對象示例創(chuàng)建和使用對象示例5-5成員方法成員方法成員變量成員變量import java.util.Scanner;public class InitialVistor public static void main(String args) Scanner input = new Scanner(System.in);Visitor v = new Visitor();System.out.print(請輸入姓名:請輸入姓名:); = input.next();System.out.print(請輸入年齡:請輸入年齡:);v.age = input.nextInt()
3、;v.show(); 創(chuàng)建對象創(chuàng)建對象給每個屬性賦值給每個屬性賦值調用方法調用方法演示示例演示示例4:創(chuàng)建和使用對象:創(chuàng)建和使用對象3小結小結2類和對象的關系?如何創(chuàng)建和使用對象?指導指導定義管理員類定義管理員類 訓練要點:定義類的屬性定義類的方法需求說明:編寫管理員類實現思路:1、定義管理員類Administrator2、定義其屬性和方法講解需求說明講解需求說明完成時間:完成時間:20分鐘分鐘練習練習定義客戶類定義客戶類需求說明:編寫客戶類屬性:積分、卡類型方法:show(),顯示客戶信息提示:定義客戶類Customer定義屬性和方法 完成時間:完成時間:15分鐘分鐘指導指導創(chuàng)建管理員對象創(chuàng)
4、建管理員對象 訓練要點:使用類創(chuàng)建對象引用對象的屬性和方法需求說明:創(chuàng)建兩個管理員類對象,輸出他們的相關信息 實現思路:1、創(chuàng)建兩個管理員類的對象2、給兩個對象賦值并調用顯示方法講解需求說明講解需求說明完成時間:完成時間:20分鐘分鐘指導指導更改管理員密碼更改管理員密碼 訓練要點:使用類創(chuàng)建對象while循環(huán)需求說明:輸入舊的用戶名和密碼,如果正確,方有權限更新從鍵盤獲取新的密碼,進行更新實現思路:1、創(chuàng)建管理員類的對象2、利用while實現循環(huán)執(zhí)行 難點指導:循環(huán)執(zhí)行講解需求說明講解需求說明完成時間:完成時間:25分鐘分鐘練習練習客戶積分回饋客戶積分回饋需求說明:實現積分回饋功能,金卡客戶積
5、分大于1000分或普卡客戶積分大于5000,獲得回饋積分500分創(chuàng)建客戶對象輸出他得到的回饋積分完成時間:完成時間:20分鐘分鐘面向對象面向對象OO的優(yōu)點的優(yōu)點與人類的思維習慣一致把人類解決問題的思維過程轉變?yōu)槌绦蚰軌蚶斫獾倪^程 信息隱藏,提高了程序的可維護性和安全性 封裝實現了模塊化和信息隱藏 封裝使得在對象外部不能隨意訪問對象的屬性和方法提高了程序的可重用性一個類可以創(chuàng)建多個對象實例,增加了重用性 數據類型總結數據類型總結intdoublecharboolean String數組數組使用使用class定義的類型定義的類型基本數據類型基本數據類型引用數據類型引用數據類型數據類型使用區(qū)別數據類
6、型使用區(qū)別數據類型數據類型特特 征征聲聲 明明使使 用用基本數據類型基本數據類型沒有方法沒有方法int i= 8;int i= 8;i+i+;引用數據類型引用數據類型具有方法具有方法Student stu = Student stu = new Student(); new Student();stu.age=20;stu.age=20;總結總結什么是類?什么是對象?類和對象的區(qū)別是什么?如何定義一個類、類的屬性和方法?如何創(chuàng)建類的對象?數據類型有哪兩種?區(qū)別是什么?作業(yè)作業(yè)課后作業(yè)必做149頁選做上機操作題提交時間:xxx提交形式:xxx預習作業(yè)查閱相關英語單詞邏輯程序基礎知識復習Java程
7、序設計第十一章第十一章類和對象的區(qū)別是什么?數據類型有哪兩類?如何使用?public class &Student String name; char sex; int age; public String tostring ( ) return name + t + sex + t + age; public static void main(String args) Student stu = new Student(); name = 神仙姐姐神仙姐姐; sex = F; age = 18; System.out.println(stu); Student toStringstu
8、.namestu.sexstu.age實現輸出學生信息,下面代碼有哪些錯誤?實現輸出學生信息,下面代碼有哪些錯誤?回顧與作業(yè)點評回顧與作業(yè)點評預習檢查預習檢查類的方法由哪幾部分組成?成員變量和局部變量的區(qū)別有哪些?JavaDoc怎樣寫注釋?本章任務本章任務實現計算平均分和課程總成績實現MyShopping系統菜單切換實現MyShopping系統入口程序 會定義和使用類的方法理解變量作用域會添加JavaDoc注釋本章目標本章目標類的方法類的方法1、寫出獅子對象的“跑方法、 “叫方法電動玩具獅子電動玩具獅子屬性:屬性:顏色:黃色顏色:黃色行為:行為:跑跑叫叫按此按鈕,按此按鈕,獅子開始叫獅子開始叫
9、按此按鈕,按此按鈕,獅子開始跑獅子開始跑類的方法示例類的方法示例public class AutoLion String color = 黃色黃色; public void run() System.out.println(正在以正在以0.1米米/秒的速度向前奔跑秒的速度向前奔跑); public String bark() String sound = 大聲吼叫大聲吼叫 ; return sound; AutoLion類代碼實現方法體方法體返回類型返回類型演示示例演示示例1:定義類的方法:定義類的方法方法名稱方法名稱如何定義類的方法如何定義類的方法類的方法定義類的某種行為或功能) 方法的定義
10、方法的定義 方法的名稱方法的名稱 方法的主體方法的主體 方法返回的數據類型方法返回的數據類型 定義類的方法定義類的方法public 返回值類型返回值類型 方法名方法名() /這里編寫方法的主體這里編寫方法的主體步驟一:定義方步驟一:定義方法名以及返回值法名以及返回值步驟二:編寫方步驟二:編寫方法體法體方法的返回值方法的返回值兩種情況如果方法具有返回值,方法中必須使用關鍵字return返回該值,返回類型為該返回值的類型如果方法沒有返回值,返回類型為voidpublic class Student String name = 張三張三; public void getName() return n
11、ame; 返回類型要匹配返回類型要匹配return 表達式;表達式;編譯錯誤編譯錯誤作用:作用: 跳出方法跳出方法給出結果給出結果方法調用方法調用方法是個“黑匣子”,完成某個特定的應用程序功能,并返回結果方法調用:執(zhí)行方法中包含的語句 對象名對象名.方法名方法名();2、小明過生日,爸爸送他一個電動獅子玩具,、小明過生日,爸爸送他一個電動獅子玩具,編程測試這個獅子能否正常工作編程測試這個獅子能否正常工作 方法調用方法調用public class AutoLion String color = 黃色黃色; /顏色顏色 /*跑跑*/ public void run() System.out.pri
12、ntln(正在以正在以0.1米米/秒的速度向前奔跑。秒的速度向前奔跑。); /*叫叫*/ public String bark() String sound = 大聲吼叫大聲吼叫 ; return sound; /*獲得顏色獲得顏色*/ public String getColor() return color; /*顯示獅子特性顯示獅子特性*/ public String showLion() return 這是一個這是一個 + getColor() + 的玩具獅子的玩具獅子!; public class TestLion public static void main(String arg
13、s) AutoLion lion = new AutoLion(); System.out.println(lion.showLion(); lion.run(); System.out.println(lion.bark(); 在類的方法中調用在類的方法中調用該類另一個方法該類另一個方法演示示例演示示例2:方法調用:方法調用在在main()方法中方法中調用類的方法調用類的方法 方法調用小結方法調用小結方法之間允許相互調用,不需要知道方法的具體實現,提高了效率 情情 況況 舉舉 例例Student類的方法類的方法a( )調用調用Student類的方法類的方法b( ),直接,直接調用調用publ
14、ic voidpublic void a( ) a( ) b( ); / b( ); /調用調用b( )b( ) Student類的方法類的方法a( )調用調用Teacher類的方法類的方法b( ),先,先創(chuàng)建類對象,然后使用創(chuàng)建類對象,然后使用“.”調用調用public voidpublic void a( ) a( ) Teacher t = Teacher t = newnew Teacher( ); Teacher( ); t.b( ); / t.b( ); /調用調用TeacherTeacher類的類的b()b() public class Studentpublic void sh
15、owInfo() return 我是一名學生我是一名學生; 方法的返回類型為方法的返回類型為void,方法中不能有,方法中不能有return返回值!返回值!常見錯誤常見錯誤4-1public class Studentpublic double getInfo() double weight = 95.5; double height = 1.69; return weight, height; 方法不能返回多個值!方法不能返回多個值!常見錯誤常見錯誤4-2public class Studentpublic String showInfo()return 我是一名學生我是一名學生;publi
16、c double getInfo() double weight = 95.5; double height = 1.69; return weight; 多個方法不能相互嵌套定義!多個方法不能相互嵌套定義!常見錯誤常見錯誤4-3public class Studentpublic String showInfo()return 我是一名學生我是一名學生;public double getInfo()double weight = 95.5; double height = 1.69; return weight;public class Studentint age=20;if(age20)
17、 System.out.println(年齡不符合入學要求!年齡不符合入學要求!); public void showInfo()return 我是一名學生我是一名學生;不能在方法外部直接寫程序邏輯代碼!不能在方法外部直接寫程序邏輯代碼!常見錯誤常見錯誤4-4小結小結1編寫電池類Cell):具有品牌屬性,可以續(xù)電編寫測試類TestCell)電池類電池類屬性:屬性:品牌品牌行為:行為:續(xù)電續(xù)電參考代碼參考代碼1參考代碼參考代碼2成員變量和局部變量成員變量和局部變量2-1變量聲明的位置決定變量作用域變量作用域確定可在程序中按變量名訪問該變量的區(qū)域for(int i = 0, a = 0; i 4;
18、 i+) a+;System.out.println ( a );代碼錯誤代碼錯誤a的作用域僅在的作用域僅在for循環(huán)中循環(huán)中 成員變量和局部變量成員變量和局部變量2-2變量變量1類型類型 變量變量1; 變量變量2類型類型 變量變量2;變量變量3類型類型 變量變量3;public 返回類型返回類型 方法方法1() 變量變量4類型類型 變量變量4;public 返回類型返回類型 方法方法2() 變量變量5類型類型 變量變量5; public class AutoLion AutoLion類的方法,類的方法,其他類的方法其他類的方法 誰能使用這些變量?誰能使用這些變量? 方法方法1 方法方法2 成
19、員變量成員變量 局部變量局部變量 局部變量局部變量 作用域不同局部變量的作用域僅限于定義它的方法成員變量的作用域在整個類內部都是可見的初始值不同Java會給成員變量一個初始值Java不會給局部變量賦予初始值在同一個方法中,不允許有同名局部變量;在不同的方法中,可以有同名局部變量兩類變量同名時,局部變量具有更高的優(yōu)先級成員變量和局部變量的區(qū)別成員變量和局部變量的區(qū)別public class Test int score1 = 88; int score2 = 98; public void calcAvg() int avg = (score1 + score2)/2; public void
20、showAvg() System.out.println(平均分是:平均分是: + avg); 常見錯誤常見錯誤局部變量局部變量avg的作用域僅限于的作用域僅限于calcAvg()方法方法指導指導計算平均分和總成績計算平均分和總成績 訓練要點:方法的定義和調用需求說明:從鍵盤接收三門課分數,計算三門課的平均分和總成績,編寫成績計算類實現功能 實現思路:1、創(chuàng)建類 ScoreCalc2、編寫方法實現各功能3、編寫測試類難點指導:面向對象編程思維講解需求說明講解需求說明完成時間:完成時間:25分鐘分鐘面向對象的編程思維面向對象的編程思維ScoreCalc類 和 Test類public static
21、 void main(String args) Scanner input = new Scanner(System.in); System.out.print(請輸入請輸入Java成績:成績:); int java = input.nextInt(); /*計算并顯示輸出計算并顯示輸出*/ int total = java + c + db; double avg = total / 3; System.out.print(總成績:總成績: + total); System.out.print(n平均分平均分: + avg);一次還可以接受,假如一次還可以接受,假如還要再執(zhí)行這個功能,還要再
22、執(zhí)行這個功能,難道還要重復再寫?難道還要重復再寫?calcDiffTimecalcTotalScore()ScoreCalcshowTotalScore()calcAvg()showAvg() main() /程序入口程序入口 /計算并輸出總成績計算并輸出總成績 /計算并輸出平均分計算并輸出平均分 Test調用調用調用調用類的方法實現某個特定的功能,類的方法實現某個特定的功能,其他類不需要知道它如何實現!其他類不需要知道它如何實現!知道了實現此功能的類和它的方法名,知道了實現此功能的類和它的方法名, 就可以直接調用了,不用重復寫代碼!就可以直接調用了,不用重復寫代碼! 面向對象面向對象OOOO
23、思想思想小結小結2編寫手機類Phone):可以下載音樂,可以播放這些音樂,可以進行充電重用電池類方法Cell)編寫測試類TestPhone)手機類手機類行為:行為:播放下載的音樂播放下載的音樂下載下載充電充電電池類電池類屬性:屬性:品牌品牌行為:行為:續(xù)電續(xù)電參考代碼參考代碼1參考代碼參考代碼2練習練習定義管理員類定義管理員類 需求說明:根據下圖所示信息,編寫管理員類Manager,使用show()方法返回管理員信息 編寫測試類ManagerTest輸出管理員信息完成時間:完成時間:10分鐘分鐘指導指導實現菜單的級聯效果實現菜單的級聯效果訓練要點:方法的定義和調用循環(huán)結構需求說明:實現MySh
24、opping菜單,輸入菜單項編號,可以自由切換各個菜單 實現思路:1、創(chuàng)建菜單類Menu 2、編寫方法實現各功能3、編寫測試類難點指導:面向對象編程思維講解需求說明講解需求說明完成時間:完成時間:30分鐘分鐘練習練習實現系統入口程序實現系統入口程序需求說明:編寫類StartSMS,實現輸入用戶名和密碼,符合條件的進入系統 完成時間:完成時間:20分鐘分鐘JavaDoc注釋注釋回顧學過的注釋方式單行注釋:/這里是單行注釋多行注釋:/*這里是多行注釋, 可以多行*/JavaDoc注釋:使用“/*”開始和“*/”完畢,用來注釋類、屬性和方法等/* *CalcScore類類 *author Chris
25、 *version 1.0 2019/06/21 */描述信息描述信息 author :描述作者信息:描述作者信息 version :描述版本信息:描述版本信息 3、為ScoreCalc類添加JavaDoc注釋 添加添加JavaDoc注釋注釋/* * ScoreCalc類類 * author 北大青鳥北大青鳥 * version 2.0 2019/06/01 */public class ScoreCalc /* Java成績成績 */int java;./* * 計算總成績計算總成績 * return total */public int calcTotalScore() int total
26、 = java + c + db;return total;.演示示例演示示例3:添加:添加JavaDoc注釋注釋 方法的方法的JavaDoc注釋注釋屬性的屬性的JavaDoc注釋注釋類的類的JavaDoc注釋注釋如何生成如何生成JavaDoc文檔文檔 JavaDoc能夠從源代碼中抽取類、屬性、方法等的注釋,形成一個和配套的API幫助文檔 生成JavaDoc文檔使用命令行方式生成使用Eclipse工具生成演示示例演示示例4:使用:使用Eclipse生成生成JavaDoc文檔文檔練習練習添加并生成添加并生成JavaDoc文文檔檔 需求說明:為我行我素購物系統的Manager類、Menu類添加Ja
27、vaDoc注釋使用Eclipse工具,生成兩個類的JavaDoc文檔完成時間:完成時間:15分鐘分鐘總結總結定義類的方法的步驟是什么?類的一個方法如何調用本類的另一個方法?類中的一個方法如何調用另一個類的方法?成員變量和局部變量的區(qū)別有哪些?如何給類的方法添加JavaDoc注釋? Java程序設計創(chuàng)建類Welcome添加一個方法sayHello(),提示輸入姓名,然后輸出“ ,歡迎你!”添加JavaDoc注釋/* * 歡迎類歡迎類 * author name */public class Welcome /* * 向用戶問好向用戶問好 */public void sayHello()Scann
28、er input = new Scanner(System.in);System.out.print(你叫什么?你叫什么?);String name = input.next();System.out.println(name + , 你好!你好!);課程內容回顧課程內容回顧參考代碼參考代碼難點突破難點突破二重循環(huán)結構類和對象之間的差異方法定義方法的返回值作業(yè)講評作業(yè)講評教員備課時完善知識梳理:二重循環(huán)結構知識梳理:二重循環(huán)結構二重循環(huán)結構循環(huán)結構:while、do-while、for、foreach可以任意層次嵌套各種循環(huán)結構可以相互嵌套二重循環(huán)結構中使用跳轉語句continue:繼續(xù)本層下
29、一輪循環(huán)break:跳出本層循環(huán)知識梳理:類和對象入門知識梳理:類和對象入門2-1類和對象類和對象及其關系類的封裝定義類創(chuàng)建和使用對象OO的優(yōu)點無參方法定義方法調用方法成員變量和局部變量面向對象編程思維知識梳理:類和對象入門知識梳理:類和對象入門2-2帶參方法定義方法指定形參調用方法指定實參基本數據類型和引用數據類型的參數區(qū)別字符串類String類StringBuffer類綜合練習:人機猜拳綜合練習:人機猜拳 任務完成人機猜拳互動游戲的開發(fā) 主要功能 選取對戰(zhàn)角色猜拳記錄分數階段1:練習分析業(yè)務,創(chuàng)建用戶類 完成時間:完成時間:15分鐘分鐘綜合練習:人機猜拳綜合練習:人機猜拳 需求說明需求說明
30、分析業(yè)務分析業(yè)務抽象出類、類的特征和行為抽象出類、類的特征和行為階段1:練習分析業(yè)務,創(chuàng)建用戶類 完成時間:完成時間:15分鐘分鐘綜合練習:人機猜拳綜合練習:人機猜拳 需求說明需求說明創(chuàng)建用戶類創(chuàng)建用戶類編寫程序入口類編寫程序入口類階段2:練習創(chuàng)建計算機類 完成時間:完成時間:15分鐘分鐘綜合練習:人機猜拳綜合練習:人機猜拳 需求說明需求說明創(chuàng)建計算機類創(chuàng)建計算機類Computer。實現計算機出拳。實現計算機出拳階段3:練習創(chuàng)建游戲類,選擇對戰(zhàn)對手 完成時間:完成時間:20分鐘分鐘綜合練習:人機猜拳綜合練習:人機猜拳 需求說明需求說明創(chuàng)建游戲類創(chuàng)建游戲類Game編寫游戲類的初始化方法編寫游戲類
31、的初始化方法initial()編寫游戲類的開始游戲方法編寫游戲類的開始游戲方法startGame()階段4:練習實現一局對戰(zhàn) 完成時間:完成時間:25分鐘分鐘綜合練習:人機猜拳綜合練習:人機猜拳 需求說明需求說明分別調用用戶類和計算機類的出拳方法分別調用用戶類和計算機類的出拳方法showFist(),接受返回值并比較,給出勝負結果接受返回值并比較,給出勝負結果階段5:練習實現循環(huán)對戰(zhàn),并累計得分 完成時間:完成時間:20分鐘分鐘綜合練習:人機猜拳綜合練習:人機猜拳 需求說明需求說明實現循環(huán)對戰(zhàn),并且累加贏家的得分實現循環(huán)對戰(zhàn),并且累加贏家的得分階段6:練習顯示對戰(zhàn)結果 完成時間:完成時間:25
32、分鐘分鐘綜合練習:人機猜拳綜合練習:人機猜拳 需求說明需求說明游戲結束后,顯示對戰(zhàn)結果游戲結束后,顯示對戰(zhàn)結果階段7:練習完善游戲類的startGame() 完成時間:完成時間:20分鐘分鐘綜合練習:人機猜拳綜合練習:人機猜拳 需求說明需求說明輸入并保存用戶姓名,游戲輸入并保存用戶姓名,游戲結束后顯示雙方的各自得分結束后顯示雙方的各自得分總結總結Java提供了哪四種循環(huán)結構?提供了哪四種循環(huán)結構?break和和continue在二重循環(huán)的中跳轉規(guī)則在二重循環(huán)的中跳轉規(guī)則是什么?是什么?類與對象的關系是什么?類與對象的關系是什么?成員變量和局部變量的區(qū)別有哪些?成員變量和局部變量的區(qū)別有哪些?J
33、ava程序設計寫出如下代碼的運行結果public static void main(String args) for (int i = 0; i 6; i+) System.out.print(i + ,);while (+i 5) continue;System.out.print(i); 0,5 預習檢查預習檢查調用帶參方法時,有哪些注意事項?為什么需要包?本章任務本章任務實現客戶信息的添加和查詢實現圖形生成器實現模擬賬戶存取款功能本章目標本章目標會定義帶參方法會使用帶參方法會創(chuàng)建包組織Java工程為什么要用帶參數的方法為什么要用帶參數的方法工作原理新鮮桃汁新鮮桃汁新鮮蘋果汁新鮮蘋果汁新鮮
34、梨汁新鮮梨汁輸輸出出三三種種果果汁汁如何使用帶參數的方法如何使用帶參數的方法3-1定義帶參數的方法調用帶參數的方法public class Zhazhi public String zhazhi ( String fruit ) String juice = fruit + 汁汁; return juice; /*調用調用zhazhi方法方法*/Zhazhi myZhazhi = new Zhazhi();String myFruit = 蘋果蘋果;String myJuice = myZhazhi.zhazhi(myFruit);System.out.println(myJuice);參數列
35、表:參數列表:(數據類型數據類型 參數參數1,數據類型數據類型 參數參數2)調用方法,傳遞的參數要調用方法,傳遞的參數要與參數列表一一對應與參數列表一一對應如何使用帶參數的方法如何使用帶參數的方法3-2 返回類型返回類型 () /方法的主體方法的主體該方法允許被訪問調用該方法允許被訪問調用的權限范圍的權限范圍方法返回值的方法返回值的類型類型public class StudentsBiz String names = new String30; public void addName(String name)/增加學生姓名增加學生姓名public void showNames ()/顯示全部學
36、生姓名顯示全部學生姓名傳送給方法的形參列表傳送給方法的形參列表一個形式參數一個形式參數沒有返回值沒有返回值如何使用帶參數的方法如何使用帶參數的方法3-3public static void main(String args) StudentsBiz st = new StudentsBiz(); Scanner input = new Scanner(System.in); for(int i=0;i5;i+) System.out.print(請輸入學生姓名:請輸入學生姓名:); String newName = input.next(); st.addName(newName); st.s
37、howNames(); 實參的類型、數量、順序實參的類型、數量、順序都要與形參一一對應都要與形參一一對應先實例化對象,先實例化對象,再使用方法再使用方法演示示例演示示例1:帶一個參數的方法:帶一個參數的方法調用帶參數的方法調用帶參數的方法對象名對象名.方法名實參方法名實參1, 實參實參2,,實參,實參n)實參列表實參列表指導指導實現客戶姓名添加和顯示實現客戶姓名添加和顯示訓練要點:帶參方法的定義帶參方法的調用 需求說明:創(chuàng)建客戶業(yè)務類,實現客戶姓名的添加和顯示 實現思路:1、創(chuàng)建CustomerBiz類2、創(chuàng)建帶參方法addName()3、創(chuàng)建方法showNames()4、創(chuàng)建測試類難點指導:
38、創(chuàng)建無返回值的帶參方法講解需求說明講解需求說明完成時間:完成時間:25分鐘分鐘練習練習查找客戶姓名查找客戶姓名需求說明:根據需要,查找客戶姓名,給出查找結果 完成時間:完成時間:20分鐘分鐘提示:定義帶參帶返回值的方法提示:定義帶參帶返回值的方法public boolean search(String name) 可以設計一個方法來實現,通過傳遞兩個參數需要修改的姓名、新姓名來實現 帶兩個參數的方法帶兩個參數的方法2-11、修改學生姓名,輸入新、舊姓名,進行、修改學生姓名,輸入新、舊姓名,進行修改并顯示是否修改成功修改并顯示是否修改成功 public class StudentsBiz Str
39、ing names = new String30; public boolean editName (String oldName,String newName) boolean find = false; / 是否找到并修改成功標識是否找到并修改成功標識 / 循環(huán)數組,找到姓名為循環(huán)數組,找到姓名為oldName的元素,修改為的元素,修改為newName for(int i=0;inames.length;i+) if(namesi.equals(oldName) namesi = newName; find=true; break; return find; 返回值類型返回值類型帶有兩個形
40、參帶有兩個形參返回結果:返回結果:boolean類型類型帶兩個參數的方法帶兩個參數的方法2-2 public class TestModify public static void main(String args) System.out.print(n請輸入要修改的學生姓名:請輸入要修改的學生姓名:); String oldname = input.next(); System.out.print(n請輸入新的學生姓名:請輸入新的學生姓名:); String newname = input.next(); System.out.println(n*修改結果修改結果*); if( st.edi
41、tName(oldname, newname) ) System.out.println(找到并修改成功!找到并修改成功!); else System.out.println(沒找到該學生!沒找到該學生!); st.showNames(); 根據返回值進行根據返回值進行處理處理傳遞兩個實參傳遞兩個實參演示示例演示示例2:帶兩個參數的方法:帶兩個參數的方法設計方法,通過傳遞三個參數開始位置、結束位置,查找的姓名來實現 帶多個參數的方法帶多個參數的方法2-12、指定查找區(qū)間,查找學生姓名并顯示是、指定查找區(qū)間,查找學生姓名并顯示是否修改成功否修改成功 public boolean searchNa
42、me (int start,int end,String name)boolean find = false; / 是否找到標識是否找到標識/ 指定區(qū)間數組中,查找姓名指定區(qū)間數組中,查找姓名for(int i=start-1;iend;i+) if(namesi.equals(name) find=true; break; return find;返回值類型返回值類型帶有三個形參帶有三個形參返回結果:返回結果:boolean類型類型帶多個參數的方法帶多個參數的方法2-2演示示例演示示例3:帶多個參數的方法:帶多個參數的方法if(st.searchName(s,e,name)System.ou
43、t.println(找到了!找到了!);elseSystem.out.println(沒找到該學生!沒找到該學生!);傳遞三個實參傳遞三個實參/方法定義方法定義public void addName(String name) /方法體方法體/方法調用方法調用對象名對象名.addName(String 張三張三);調用方法時不能指定實參類型!調用方法時不能指定實參類型!常見錯誤常見錯誤4-1對象名對象名.addName(張三張三);/方法定義方法定義public boolean searchName(int start ,int end ,String name)/方法體方法體/方法調用方法調用
44、String s=開場開場;int e=3;String name=張三張三;boolean flag=對象名對象名. searchName(s ,e ,name);形參和實參數據類型不一致!形參和實參數據類型不一致!常見錯誤常見錯誤4-2/方法定義方法定義public boolean searchName(int start,int end,String name)/方法體方法體/方法調用方法調用int s=1;int e=3;boolean flag= 對象名對象名.searchName(s,e);形參和實參數量不一致!形參和實參數量不一致!常見錯誤常見錯誤4-3/方法定義方法定義publ
45、ic boolean searchName(int start,int end,String name)/方法體方法體/方法調用方法調用int s=1;int e=3;String name=張三張三;對象名對象名.searchName(s,e,name);調用方法后沒有對返回值作任何處理!調用方法后沒有對返回值作任何處理!常見錯誤常見錯誤4-4練習練習實現圖形生成器實現圖形生成器需求說明:根據指定不同的行以及字符,生成不同的三角形完成時間:完成時間:20分鐘分鐘為什么需要包為什么需要包生活案例 文檔分門別類,易于查找文檔分門別類,易于查找 不同內容的文檔可以放在不同的不同內容的文檔可以放在不
46、同的 袋子中,擁有相同的名字,避免沖突袋子中,擁有相同的名字,避免沖突 易于管理易于管理 為什么需要包為什么需要包樹形文件系統樹形文件系統使用目錄解決文件同名沖突問題使用目錄解決文件同名沖突問題如何存放兩個同名的類而不沖突?如何存放兩個同名的類而不沖突?Sort.java 插入排序插入排序 Sort.java 冒泡排序冒泡排序 包包包解決類的同名問題允許類組成較小的單元類似允許類組成較小的單元類似文件夾),易于找到和使用相文件夾),易于找到和使用相應的文件應的文件 防止命名沖突防止命名沖突 更好的保護類、屬更好的保護類、屬性和方法性和方法 A.java包包如何創(chuàng)建包如何創(chuàng)建包package c
47、n.jbit.classandobject; /聲明包public class AccpSchool / public String toString() / 包名包名 使用使用package聲明包,聲明包,以分號結尾以分號結尾如果有包的聲明,一定如果有包的聲明,一定作為作為Java源代碼的第一條源代碼的第一條語句語句 包命名規(guī)范包命名規(guī)范包名由小寫字母組成,不能以圓點開頭或結尾包名之前最好加上唯一的前綴,通常使用組織倒置的網絡域名。如:域名javagroup 包名后續(xù)部分依不同機構內部的規(guī)范不同而不同 package mypackage;package net.javagroup.mypac
48、kage;package net.javagroup.research.powerproject; 部門名部門名 項目名項目名 package .mypackage; 用用Eclipse 創(chuàng)建包創(chuàng)建包使用Eclipse創(chuàng)建包的兩種方法:分別創(chuàng)建包和類:創(chuàng)建項目創(chuàng)建包創(chuàng)建類創(chuàng)建類的過程中創(chuàng)建類所在的包創(chuàng)建項目創(chuàng)建包和類演示示例演示示例4:使用:使用Eclipse創(chuàng)建包和類創(chuàng)建包和類 包與目錄的關系包與目錄的關系創(chuàng)建好的包和Java源文件是如何存儲的?創(chuàng)建包cn.jbit.classandobject ,即創(chuàng)建了目錄結構:cnjbitclassandobject cnjbitclassandobj
49、ectAccpSchool.javaHelloAccp.java如何導入包如何導入包為了使用不在同一包中的類,需要在Java程序中使用import關鍵字導入這個類import java.util.*; /導入導入java.util包中所有類包中所有類import cn.jbit.classandobject.AccpSchool; /導入指定包中指定類導入指定包中指定類 關鍵字關鍵字import并不陌生并不陌生 import 包名包名. 類名;類名;1、系統包:、系統包:java.util2、自定義包:、自定義包:cn.jbit.classandobject*: 指包中的所有類指包中的所有類A
50、ccpSchool :指包中的:指包中的AccpSchool類類小結小結 AccpSchool.java位于cn.jbit.classandobject包中,HelloAccp.java位于demo包中,下面程序空缺部分需要填入代碼嗎?如果需要,是什么? /添加代碼添加代碼2/添加代碼添加代碼3public class HelloAccp public static void main(String args)AccpSchool center = new AccpSchool(); center.showMessage(); /添加代碼添加代碼1public class AccpSchool
51、 public void showMessage() System.out.println(“這是上這是上海海Accp中心。中心。); package cn.jbit.classandobject;package demo; import cn.jbit.classandobject.*;聲明包的含義:聲明包的含義:聲明當前類所處的位置聲明當前類所處的位置導入包的含義:導入包的含義:聲明在當前類中要使用到的聲明在當前類中要使用到的別的類所處的位置別的類所處的位置練習練習模擬賬戶查詢,實現存模擬賬戶查詢,實現存取款取款需求說明:模擬銀行賬戶業(yè)務,進行余額查詢,實現存款和取款完成時間:完成時間:2
52、0分鐘分鐘總結總結形式參數和實際參數有什么區(qū)別?調用帶參方法是有哪些注意事項?如何聲明包?如何導入包?包與存儲Java源文件的目錄結構關系是什么?Java程序設計/方法定義方法定義public void addName(name) /方法體方法體/方法調用方法調用int n = 對象名對象名.addName(張三張三);糾正代碼中的錯誤,輸出“早上好!”包package的作用有哪些?必須指定形參類型必須指定形參類型回顧與作業(yè)點評回顧與作業(yè)點評方法沒有返回值方法沒有返回值預習檢查預習檢查基本數據類型和引用數據類型作為方法參數,在傳遞時有什么不同之處?本章任務本章任務實現MyShopping系統增
53、加會員功能實現MyShopping系統會員積分功能本章目標本章目標會使用數組作為方法的參數和返回值會使用對象作為方法的參數使用Arrays類提供的sort()方法實現定義一個獨立的方法來實現姓名排序,該方法的返回值為數組類型數組類型的方法返回值數組類型的方法返回值2-11、編寫方法,實現學生的姓名排序、編寫方法,實現學生的姓名排序 public class StudentsBiz String names = new String5; / 學生姓名數組學生姓名數組public void inputNames()/接收用戶輸入的接收用戶輸入的5個學生姓名,存放于個學生姓名,存放于names中中/
54、字符串數組作為返回值字符串數組作為返回值public String getNames()Arrays.sort(names);return names;返回字符串數組返回字符串數組public class TestSort public static void main(String args) StudentsBiz st = new StudentsBiz();st.inputNames();String namesbysort =st.getNames();System.out.println(*排序后排序后*);for(int i =0;i namesbysort.length;i+)
55、if(namesbysort i!=null) System.out.print(namesbysort i+t);數組類型的方法返回值數組類型的方法返回值2-2演示示例演示示例1:數組類型的方法返回值:數組類型的方法返回值調用方法,返回結果調用方法,返回結果處理返回結果處理返回結果定義學生類,添加屬性:三門課的成績 定義學生成績計算類,添加方法,傳遞對象參數 定義測試類對象類型的參數對象類型的參數3-12、編寫學生成績計算類,計算學生平均分、編寫學生成績計算類,計算學生平均分 public class Students /定義三門課成績屬性定義三門課成績屬性float java=0;floa
56、t database=0;float html=0;三門課成績三門課成績public class Score /計算平均分,對象作為參數計算平均分,對象作為參數public float getAvg(Students stu)float avg=0;avg=(stu.java +stu.database +stu.html )/3;return avg;對象類型的參數對象類型的參數3-2返回結果返回結果對象類型的參數對象類型的參數public class TestScore public static void main(String args) Students stu=new Students();Score sc=new Score();float avg=0;stu.java=80;stu.database=95;stu.html=77;avg=sc.getAvg(stu);System.out.println(該學生的平均分為:該學生的平均分為:+avg);調用方法,傳遞參調用方法,傳遞參數,返回結果數
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 注冊會計師考試制定計劃策略試題及答案
- 有效利用時間的備考方法與試題及答案
- 注冊會計師財務資格考評試題及答案
- 2025年會計師考試易錯題試題及答案
- 高壓水射流清淤施工方案
- 2024年生物制品相關題目試題及答案
- 2025年市場調研方法與應用試題及答案
- 適合考生的2025年注冊會計師考試復習策略試題及答案
- 2024年項目管理專業(yè)人士考試知識體系試題及答案
- 拖拉機融資租賃操作實務考核試卷
- 網格員安全培訓
- Environmental Biotechnology知到智慧樹章節(jié)測試課后答案2024年秋哈爾濱工業(yè)大學
- 《珠三角地區(qū)環(huán)境質量與經濟發(fā)展的實證探究》8800字(論文)
- 通訊設備故障處理預案
- 帝豪EV450維修手冊
- 市政工程管線之間及其構筑物之間最小水平距離要求
- 數字經濟學-教學案例及答案 唐要家
- 【S鎮(zhèn)35kV變電站一次系統設計(論文)14000字】
- V帶傳動設計說明書
- 酒店投標書范本
- 與農戶的收購協議書范本
評論
0/150
提交評論