面向對象-抽象類抽象方法及練習

      網友投稿 796 2022-05-29

      抽象類

      用abstract關鍵字修飾的類,叫做抽象類

      抽象類不能被實例化

      抽象類是用來被繼承的

      抽象類的子類必須要重寫父類的方法并提供方法體

      抽象方法

      用abstract關鍵字來修飾的方法,叫做抽象方法

      抽象方法只有方法聲明,沒有實現方法,直接使用分號結尾,如:

      public abstract void say();

      1

      如果一個類中含有抽象方法,那么這個類必須被聲明為抽象類

      Tips:

      abstract不能用來修飾變量、代碼塊和構造器

      abstract不能用來修飾私有、靜態、final方法和final類

      模板方法設計模式

      通過子類繼承抽象類,抽象類可以作為多個子類的通用的模板,每一個子類必須重寫抽象類中的抽象方法,也可以進行拓展和改造,體現了一種模板模式的設計。

      通過這種方法,可以在編寫一些部分內容很不確定容易改變的方法時,在父類中使用抽象方法寫好,再在子類中將這些易變的方法具體化實現。

      練習:

      編寫工資系統,實現不同類型員工(多態)的按月發放工資。如果當月出現某個

      Employee對象的生日,則將該雇員的工資增加100元。

      面向對象-抽象類和抽象方法及練習

      實驗說明:

      (1)定義一個Employee類,該類包含:

      private成員變量name,number,birthday,其中birthday 為MyDate類的對象;

      abstract方法earnings();

      toString()方法輸出對象的name,number和birthday。

      (2)MyDate類包含:

      private成員變量year,month,day ;

      toDateString()方法返回日期對應的字符串:xxxx年xx月xx日

      (3)定義SalariedEmployee類繼承Employee類,實現按月計算工資的員工處

      理。該類包括:private成員變量monthlySalary;

      實現父類的抽象方法earnings(),該方法返回monthlySalary值;toString()方法輸

      出員工類型信息及員工的name,number,birthday。

      (4)參照SalariedEmployee類定義HourlyEmployee類,實現按小時計算工資的

      員工處理。該類包括:

      private成員變量wage和hour;

      實現父類的抽象方法earnings(),該方法返回wage*hour值;

      toString()方法輸出員工類型信息及員工的name,number,birthday。

      (5)定義PayrollSystem類,創建Employee變量數組并初始化,該數組存放各

      類雇員對象的引用。利用循環結構遍歷數組元素,輸出各個對象的類

      型,name,number,birthday,以及該對象生日。當鍵盤輸入本月月份值時,如果本

      月是某個Employee對象的生日,還要輸出增加工資信息。

      提示:

      //定義People類型的數組People c1[]=new People[10];

      //數組元素賦值

      c1[0]=new People(“John”,“0001”,20);

      c1[1]=new People(“Bob”,“0002”,19);

      //若People有兩個子類Student和Officer,則數組元素賦值時,可以使父類類型的數組元素指向子類。

      c1[0]=new Student(“John”,“0001”,20,85.0);

      c1[1]=new Officer(“Bob”,“0002”,19,90.5);

      數據結構 面向對象編程

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:Redis入門不難系列(1)
      下一篇:《深度學習之圖像識別核心技術與案例實戰》—3.4.3 數據清洗與整理
      相關文章
      亚洲视频手机在线| 亚洲色成人网一二三区| 亚洲国产系列一区二区三区| 亚洲欧洲春色校园另类小说| 亚洲AV天天做在线观看| 亚洲AV无码乱码国产麻豆| 国产亚洲av片在线观看播放| 国产精品亚洲A∨天堂不卡| 亚洲午夜久久久影院| 亚洲国产精品一区第二页| 亚洲国产成人片在线观看| 亚洲AV无码久久精品狠狠爱浪潮| 亚洲成a人片在线观看日本| 亚洲av无码国产精品夜色午夜 | 亚洲国产精品乱码一区二区 | 亚洲日本VA午夜在线电影| 亚洲人成色777777老人头| 亚洲免费网站观看视频| 亚洲av无码片vr一区二区三区| 亚洲AV无码成人精品区狼人影院 | 国产成人综合亚洲绿色| 亚洲成a人一区二区三区| 亚洲精品无码久久久久AV麻豆| 毛茸茸bbw亚洲人| 亚洲精品乱码久久久久久按摩| 亚洲AV无码成人专区片在线观看 | 亚洲AV网站在线观看| 亚洲精品tv久久久久久久久久| 中文字幕亚洲不卡在线亚瑟| 亚洲va无码专区国产乱码| 亚洲第一视频网站| 亚洲国产模特在线播放| 亚洲日韩看片无码电影| av无码东京热亚洲男人的天堂| 亚洲午夜福利精品无码| 久久精品国产亚洲综合色| 99人中文字幕亚洲区| 亚洲丝袜中文字幕| 亚洲精品动漫免费二区| 亚洲国产一级在线观看| 亚洲精品无码成人AAA片|