Java編程之繼承問題代碼示例
課堂練習(xí):
–在包bzu.aa中定義一個(gè)交通工具類(Vehicle):
1、屬性——載客量(capacity)
2、方法
(1)無參構(gòu)造方法(給capacity初始化值為2,并輸出“執(zhí)行交通工具類的無參構(gòu)造方法?!保?/p>
(2)有參構(gòu)造方法(傳參給capacity初始化,并輸出“執(zhí)行交通工具的有參構(gòu)造方法?!保?/p>
(3)capacity的set、get方法
(4)print方法:輸出capacity
–在包bzu.aa中定義一個(gè)汽車類(Car)繼承交通工具類:
1、屬性——speed
2、方法
(1)無參構(gòu)造方法(給speed初始化值為0,并輸出“執(zhí)行汽車類的無參構(gòu)造方法?!保?/p>
(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中定義一個(gè)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)造方法。”)
(3)重寫print方法:輸出speed、 capacity及父類的capacity。
–在包bzu.bb中編寫一個(gè)主類Test:
1、主函數(shù)
(1)、調(diào)用無參構(gòu)造方法創(chuàng)建一個(gè)Car的對(duì)象car;調(diào)用加速方法將速度加至50,調(diào)用print方法;調(diào)用減速方法,將速度減至20,調(diào)用print方法。
(2)、調(diào)用有參構(gòu)造方法創(chuàng)建一個(gè)Bus的對(duì)象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();
}
}
運(yùn)行結(jié)果:

總結(jié)
以上就是本文關(guān)于Java編程之繼承問題代碼示例的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友繼續(xù)參閱本站:Javaweb應(yīng)用使用限流處理大量的并發(fā)請(qǐng)求詳解、Java線程之程安全與不安全代碼示例、java集合中的list詳解等,有什么問題可以隨時(shí)留言,小編會(huì)及時(shí)回復(fù)大家的。感謝朋友們對(duì)本站的支持!
相關(guān)文章
Javaweb 鼠標(biāo)移入移出表格顏色變化的實(shí)現(xiàn)
這篇文章主要介紹了Javaweb 鼠標(biāo)移入移出表格顏色變化的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
詳解Spring Boot配置使用Logback進(jìn)行日志記錄的實(shí)戰(zhàn)
本篇文章主要介紹了詳解Spring Boot配置使用Logback進(jìn)行日志記錄的實(shí)戰(zhàn),具有一定的參考價(jià)值,有興趣的朋友可以了解一下2017-07-07
使用@Validated注解進(jìn)行校驗(yàn)卻沒有效果的解決
這篇文章主要介紹了使用@Validated注解進(jìn)行校驗(yàn)卻沒有效果的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
java基本教程之java線程等待與java喚醒線程 java多線程教程
這篇文章主要介紹了對(duì)線程等待/喚醒方法,文中使用了多個(gè)示例,大家參考使用吧2014-01-01
快速解決 MyBatis-Plus 中 ID 自增問題(推薦)
本文介紹了MyBatis-Plus中自動(dòng)生成ID過長(zhǎng)導(dǎo)致的問題及解決方法,結(jié)合示例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2025-02-02
解決idea 拉取代碼出現(xiàn)的 “ Сannot Run Git Cannot identify version of
這篇文章主要介紹了解決idea 拉取代碼出現(xiàn)的 “ Сannot Run Git Cannot identify version of git executable: no response“的問題,需要的朋友可以參考下2020-08-08
SpringBoot使用WebSocket實(shí)現(xiàn)前后端交互的操作方法
springboot使用websocket有兩種方式,一種是實(shí)現(xiàn)簡(jiǎn)單的websocket,另外一種是實(shí)現(xiàn)STOMP協(xié)議,本篇講述如何使用springboot實(shí)現(xiàn)簡(jiǎn)單的websocket,需要的朋友可以參考下2022-04-04

