Java編程之繼承問題代碼示例
課堂練習(xí):
–在包bzu.aa中定義一個交通工具類(Vehicle):
1、屬性——載客量(capacity)
2、方法
(1)無參構(gòu)造方法(給capacity初始化值為2,并輸出“執(zhí)行交通工具類的無參構(gòu)造方法。”)
(2)有參構(gòu)造方法(傳參給capacity初始化,并輸出“執(zhí)行交通工具的有參構(gòu)造方法。”)
(3)capacity的set、get方法
(4)print方法:輸出capacity
–在包bzu.aa中定義一個汽車類(Car)繼承交通工具類:
1、屬性——speed
2、方法
(1)無參構(gòu)造方法(給speed初始化值為0,并輸出“執(zhí)行汽車類的無參構(gòu)造方法。”)
(2)有參構(gòu)造方法(用super關(guān)鍵字調(diào)用父類的有參構(gòu)造方法,傳參給speed初始化,并輸出“執(zhí)行汽車類的有參構(gòu)造方法?!保?/p>
(3)加速(speedup):speed+10并返回speed;
(4)減速(speeddown):speed-15并返回speed;
(5)重寫print方法:輸出speed和capacity。
–在包bzu.bb中定義一個final的公交車類(Bus),繼承汽車類:
1、屬性——載客量(capacity)<變量隱藏>
2、方法
(1)無參構(gòu)造方法(給capacity初始化值為20,并輸出“執(zhí)行公交車類的無參構(gòu)造方法?!保?/p>
(2)有參構(gòu)造方法(用super關(guān)鍵字調(diào)用父類的有參構(gòu)造方法,傳參給capacity初始化,并輸出“執(zhí)行公交車類的有參構(gòu)造方法?!保?/p>
(3)重寫print方法:輸出speed、 capacity及父類的capacity。
–在包bzu.bb中編寫一個主類Test:
1、主函數(shù)
(1)、調(diào)用無參構(gòu)造方法創(chuàng)建一個Car的對象car;調(diào)用加速方法將速度加至50,調(diào)用print方法;調(diào)用減速方法,將速度減至20,調(diào)用print方法。
(2)、調(diào)用有參構(gòu)造方法創(chuàng)建一個Bus的對象bus;調(diào)用print方法。 ##
Vehicle類:
package bzu.aa; public class Vehicle { protected int capacity; public Vehicle (){ capacity=2; System.out.println("執(zhí)行交通工具類的無參構(gòu)造方法."); } public Vehicle(int capacity){ //super(); this.capacity=capacity; System.out.println("執(zhí)行交通工具類的有參構(gòu)造方法."); } public int getCapacity(){ return capacity; } public void setCapacity(int capacity){ this.capacity=capacity; } public void print(){ System.out.println("交通工具的載客量為:"+capacity); } } Car類: package bzu.aa; public class Car extends Vehicle { protected int speed; public Car(){ super(); speed=0; System.out.println("執(zhí)行汽車類的無參構(gòu)造方法."); } public Car(int speed){ super(6); this.speed=speed; System.out.println("執(zhí)行汽車類的有參構(gòu)造方法."); } public int speedUp(int speed){ this.speed=speed+10; return speed; } public int speedDown(int speed){ this.speed=speed-10; return speed; } public void print(){ System.out.println("汽車的載客量為:"+capacity+";汽車的速度為:"+speed); } } Bus類: package bzu.bb; import bzu.aa.Car; public final class Bus extends Car{ public int capacity; public Bus(){ super(); capacity=20; System.out.println("執(zhí)行公交車類的無參構(gòu)造方法."); } public Bus(int capacity){ super(40); this.capacity=capacity; System.out.println("執(zhí)行公交車類的有參構(gòu)造方法."); } public void print(){ System.out.println("公交車的的載客量為:"+capacity+";公交車的速度為:"+speed+";汽車類的載客量為:"+getCapacity()); } } Test類: package bzu.bb; import bzu.aa.Car; public class Test { public static void main(String[] args) { Car car=new Car(); car.speedUp(40); car.print(); car.speedDown(30); car.print(); Bus bus=new Bus(20); bus.print(); } }
運行結(jié)果:
總結(jié)
以上就是本文關(guān)于Java編程之繼承問題代碼示例的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友繼續(xù)參閱本站:Javaweb應(yīng)用使用限流處理大量的并發(fā)請求詳解、Java線程之程安全與不安全代碼示例、java集合中的list詳解等,有什么問題可以隨時留言,小編會及時回復(fù)大家的。感謝朋友們對本站的支持!
相關(guān)文章
StringUtils中的isEmpty、isNotEmpty、isBlank和isNotBlank的區(qū)別詳解
這篇文章主要介紹了StringUtils中的isEmpty、isNotEmpty、isBlank和isNotBlank的區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06java 重定義數(shù)組的實現(xiàn)方法(與VB的ReDim相像)
java 重定義數(shù)組的實現(xiàn)方法(與VB的ReDim相像),需要的朋友可以參考一下2013-04-04簡單講解奇偶排序算法及在Java數(shù)組中的實現(xiàn)
這篇文章主要介紹了奇偶排序算法及Java數(shù)組的實現(xiàn),奇偶排序的時間復(fù)雜度為O(N^2),需要的朋友可以參考下2016-04-04SchedulingConfigurer實現(xiàn)動態(tài)定時,導(dǎo)致ApplicationRunner無效解決
這篇文章主要介紹了SchedulingConfigurer實現(xiàn)動態(tài)定時,導(dǎo)致ApplicationRunner無效的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05IDEA Maven Mybatis generator 自動生成代碼(實例講解)
下面小編就為大家分享一篇IDEA Maven Mybatis generator 自動生成代碼的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12