题目:在包bzu.aa中定义一个交通工具类(Vehicle):
1. 属性——载客量(capacity)
2. 方法
无参构造方法(给capacity初始化值为2,并输出“执行交通工具类的无参构造方法。”)
有参构造方法(传参给capacity初始化,并输出“执行交通工具的有参构造方法。”)
capacity的set、get方法
print方法:输出capacity
(1)代码
package bzu.aa;
public class Vehicle {
protected int capacity;
Vehicle(){
capacity=2;
System.out.println("执行交通工具类的无参构造方法");
}
Vehicle(int ca){
capacity=ca;
System.out.println("执行交通工具的有参构造方法");
}
public void setCapacity(int ca){
capacity=ca;
}
public int getCapacity(){
return capacity;
}
public void print()
{
System.out.println(capacity);
}
}
package bzu.aa;
public class Car extends Vehicle {
protected int speed;
public Car(){
speed=0;
System.out.println("执行汽车类的无参构造方法");
}
public Car(int sp,int ca){
super(ca);
speed = sp;
System.out.println("执行汽车类的有参构造方法。");
}
public int speedup(int i){
speed=speed+10;
speed=speed+i;
return speed;
}
public int speeddown(int i){
speed= speed-15;
speed=speed-i;
return speed;
}
public void print(){
System.out.println("Car的速度:"+speed);
System.out.println("Car的容量:"+capacity);
}
}
package bzu.bb;
import bzu.aa.Car;
public final class Bus extends Car{
int capacity;
Bus(){
capacity=20;
}
Bus(int ca1,int ca2,int sp1){
super(sp1,ca1);
capacity=ca2;
System.out.println("执行公交车类的有参构造方法。");
}
public void print(){
System.out.println("Bus的容量:"+capacity);
System.out.println("Vehicle的容量:"+super.capacity);
System.out.println("速度:"+super.speed);
}
}
package bzu.bb;
import bzu.aa.Car;
public class Test {
public static void main(String[] args) {
Car c=new Car();
c.speedup(40);
c.print();
c.speeddown(15);
c.print();
Bus b=new Bus(3,8,42);
b.print();
}
}
(2)运行结果
执行交通工具类的无参构造方法
执行汽车类的无参构造方法
Car的速度:50
Car的容量:2
Car的速度:20
Car的容量:2
执行交通工具的有参构造方法
执行汽车类的有参构造方法。
执行公交车类的有参构造方法。
Bus的容量:8
Vehicle的容量:3
速度:42