Lesson 3 上机练习题——继承

来源:互联网 发布:cnc数控编程好学吗 编辑:程序博客网 时间:2024/05/21 11:17

课堂练习

– 在bzu.aa中定义一个交通工具类(Vehicle

属性——载客量capacity

n 方法

u 无参构造方法(给capacity初始化值为2,并输出“执行交通工具无参构造方法。”)

u 有参构造方法(传给capacity初始化,并输出“执行交通工具的有参构造方法。”)

u capacity的setget方法

u print方法输出capacity

– 在bzu.aa中定义一个汽车类Car)继承交通工具类

n 属性——speed

n 方法

u 无参构造方法(给speed初始化值为0,并输出“执行汽车类无参构造方法。”)

u 有参构造方法(用super关键字调用父类的有参构造方法,给speed初始化,并输出“执行汽车类有参构造方法。”)

u 加速speedup:speed+10并返回speed

u 减速speeddown:speed-15并返回speed

u 重写print方法:输出speedcapacity

– 在bzu.bb中定义一个final公交车类(Bus继承汽车类:

属性——载客量capacity<变量隐藏>

n 方法

u 无参构造方法(给capacity初始化值为20,并输出“执行公交车类无参构造方法。”)

u 有参构造方法(用super关键字调用父类的有参构造方法,给capacity初始化,并输出“执行公交车类有参构造方法。”)

u 重写print方法:输出speed、 capacity及父类的capacity

– 在bzu.bb中编写一个主类Test

n 主函数

u 调用无参构造方法创建一个Car的对象car;调用加速方法将速度加至50调用print方法;调用减速方法,将速度减至20调用print方法。

u 调用有参构造方法创建一个Bus的对象bus;调用print方法。

package bzu.aa;public class Vehicle {  protected int capacity;  public Vehicle(){  capacity=2;  System.out.println("执行交通工具类的无参构造方法");  }  public Vehicle(int capacity){  this.capacity=capacity;  System.out.println("执行交通工具类的无参构造方法");  }  public void setCapacity(int capacity){  this.capacity=capacity;  }  public int  getCapacity(){  return capacity;  }  public void print(){  System.out.println("载客量的值为:"+capacity);    }}

package bzu.aa;public class Car extends  Vehicle {public double speed;public Car(){double speed=0;System.out.println("执行汽车类的无参构造方法");}public Car(double speed,int capacity){super(capacity);this.speed=speed;System.out.println("执行汽车类的无参构造方法");}public double speedUP(){return speed+=10;}public double speedDown(){return speed-=15;}public void print(){System.out.println("载客量的值为:"+capacity+"速度的值为:"+speed); }  }

package bzu.bb;import bzu.aa.Car;public final class Bus extends Car {final int capacity;Bus(){capacity=20;System.out.println("执行公交车类的无参构造方法");}Bus(int capacity){capacity=super.getCapacity();this.capacity=capacity;System.out.println("执行公交车类的无参构造方法");}public void print(){System.out.println("载客量的值为:"+capacity+"速度的值为:"+speed);System.out.println("父类载客量的值为:"+super.capacity);}}

package bzu.bb;import bzu.aa.Car;public class Test {public static void main (String args[]){Car car=new Car();car.speed=55;car.speedUP();car.print();car.speed=45;car.speedDown();car.print();Bus bus=new Bus();bus.print();}}