您的位置:首页 > 编程语言 > Java开发

第七周java作业

2017-10-12 20:58 274 查看
题目:在包bzu.aa中定义一个交通工具类(Vehicle):
 属性——载客量(capacity)

 方法

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

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

capacity的set、get方法

print方法:输出capacity

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

属性——speed

 方法

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

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

加速(speedup):speed+10并返回speed;

减速(speeddown):speed-15并返回speed;

重写print方法:输出speed和capacity。

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

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

 方法

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

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

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

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

主函数

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

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

代码:

package bzu.aa;

public class Car extends Vehicle{

 public int speed;

 public Car(){

  super();

  speed = 0;

  System.out.println("执行汽车类的无参构造方法");

 }

 public Car(int speed){

  super(3);

  this.speed = speed;

  System.out.println("执行汽车类的有参构造方法");

 }

public void setSpeedUp(int speed) {

 speed=speed+10;

 

}

public int getSpeedUp(){

return speed;

}

public void setSpeedDown(int speed) {

 speed=speed-15;

 

}

public int getSpeedDown(){

return speed;

}

 public void print(){

 System.out.println("载客量为:"+capacity);

 System.out.println("速度为:"+speed);

}

}

package bzu.aa;

public class Vehicle {

 protected int capacity;

 public Vehicle(){

  capacity=2;

  System.out.print("执行交通工具类的无参构造方法.");

 }

  public Vehicle(int C){

    capacity=C;

    System.out.print("执行交通工具类的有参构造方法.");

   }

   public void setCapacity(){

   

   }

   public int  getCapacity(){

    return capacity;

   }

   void print(){

    System.out.println("载客量为:"+capacity);

   }

}

package bzu.bb;

import bzu.aa.Car;

public class Bus extends Car{

int capacity;

Bus(){

 capacity=20;

 System.out.print("执行公交类的无参构造方法.");

 

}

public  Bus(int capacity){

 super(20);

 this.capacity=capacity;

 System.out.println("执行公交类的有参构造方法。");

 }

public void print(){

  System.out.println("载客量为:"+capacity);

  System.out.println("速度为:"+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.setSpeedUp(40);

car.getSpeedUp();

car.setSpeedDown(35);

car.getSpeedDown();

Bus bus = new Bus(25);

bus.print();

}

}

package bzu.bb;

import bzu.aa.Car;

public class Test {

 public static void main(String[] args){

Car car=new Car();

car.setSpeedUp(40);

car.getSpeedUp();

car.setSpeedDown(35);

car.getSpeedDown();

Bus bus = new Bus(25);

bus.print();

}

}

 package bzu.bb;

import bzu.aa.Car;

public class Bus extends Car{

int capacity;

Bus(){

 capacity=20;

 System.out.print("执行公交类的无参构造方法.");

 

}

public  Bus(int capacity){

 super(20);

 this.capacity=capacity;

 System.out.println("执行公交类的有参构造方法。");

 }

public void print(){

  System.out.println("载客量为:"+capacity);

  System.out.println("速度为:"+speed);

  System.out.println("载客量为;"+super.capacity);

 }

}

截图:

 


 总结:1.在一个类中可以选择定义有参的构造方法,也可以定义无参的构造方法。

             2.测试类一定要写主函数。

                  

 

 

 

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: