二、继承的用法
/不太符合
要求如下:
定义父类Vehicle,具有属性车轮数和车重,构造函数初始化对象属性,构造方法show()用以输出相关属性
定义子类Truck,表示卡车,新增属性表示载重量
定义子类Minibus,表示面包车,新增载客数属性
为两个子类定义合适的构造方法用以初始化属性
覆盖父类的show方法,输出相关信息
package test1;
/*
定义父类Vehicle,具有属性车轮数和车重,构造函数初始化对象属性,构造方法show()用以输出相关属性
定义子类Truck,表示卡车,新增属性表示载重量
定义子类Minibus,表示面包车,新增载客数属性
为两个子类定义合适的构造方法用以初始化属性
覆盖父类的show方法,输出相关信息
*/
class Vehicle {
int wheel_num;
double vehicle_weight;
Vehicle(int wheel_num,double vehicle_weight) {
this.wheel_num=wheel_num;
this.vehicle_weight=vehicle_weight;
}
void show() {
System.out.println("The wheel_num is "+this.wheel_num);
System.out.println("The vehicle_weight is "+this.vehicle_weight);
}
}
class Truck extends Vehicle{
int load_cap;
public Truck (int wheel_num,double vehicle_weight,int load_cap){
super(wheel_num,vehicle_weight);
this.load_cap=load_cap;
}
void show() {
System.out.println("The Truck load_cap is "+this.load_cap);
System.out.println("The Truck wheel_num is "+this.wheel_num);
System.out.println("The Truck vehicle_weight is "+this.vehicle_weight);
}
}
class Minibus extends Vehicle{
int people_num;
public Minibus(int wheel_num,double vehicle_weight,int load_cap,int people_num){
super(wheel_num,vehicle_weight);
this.people_num=people_num;
}
void show() {
System.out.println("The Minibus people_num is "+this.people_num);
System.out.println("The Minibus wheel_num is "+this.wheel_num);
System.out.println("The Minibus vehicle_weight is "+this.vehicle_weight);
}
}
public class test{
public static void main(String[] args) {
Vehicle v1=new Vehicle(4,10000);
Truck v2=new Truck(8,10000,100);
Minibus v3=new Minibus(8,20000,10,20);
v1.show();
v2.show();
v3.show();
}
}