Java编程之继承问题代码示例

 更新时间:2017年11月11日 14:38:35   作者:Evan19870504  
这篇文章主要介绍了Java编程之继承问题代码示例,具有一定参考价值,需要的朋友可以了解下。

课堂练习:

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

1、属性——载客量(capacity)

2、方法

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

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

(3)capacity的set、get方法

(4)print方法:输出capacity

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

1、属性——speed

2、方法

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

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

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

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

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

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

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

2、方法

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

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

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

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

1、主函数

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

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

Vehicle类:

package bzu.aa;
public class Vehicle {
  protected int capacity;
  public Vehicle (){
    capacity=2;
    System.out.println("执行交通工具类的无参构造方法.");
  }
  public Vehicle(int capacity){
    //super();
    this.capacity=capacity;
    System.out.println("执行交通工具类的有参构造方法.");
  }
  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("执行汽车类的无参构造方法.");
    }
  public Car(int speed){
    super(6);
    this.speed=speed;  
    System.out.println("执行汽车类的有参构造方法.");
    }
  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("执行公交车类的无参构造方法.");  
  }
  public Bus(int capacity){
    super(40);
    this.capacity=capacity;
    System.out.println("执行公交车类的有参构造方法.");  
  }
  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();
  }
}

运行结果:

总结

以上就是本文关于Java编程之继承问题代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友继续参阅本站:Javaweb应用使用限流处理大量的并发请求详解Java线程之程安全与不安全代码示例java集合中的list详解等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!

相关文章

  • Java Calendar类使用之日期和时间处理指南

    Java Calendar类使用之日期和时间处理指南

    这篇文章主要给大家介绍了关于Java Calendar类使用之日期和时间处理指南的相关资料,Calendar类是Java中用于处理日期和时间的抽象类,它提供了一种独立于特定日历系统的方式来处理日期和时间,需要的朋友可以参考下
    2023-12-12
  • Java foreach循环的使用方法详解

    Java foreach循环的使用方法详解

    Java SE5引入了一种更加简洁的for语法用于数组和容器,即foreach语法,表示不必创建int变量去对由访问项构成的序列进行计数,foreach将自动产生每一项,这种循环方式在我们后来遍历集合时很常用,所以也有必要来学习一下,需要的朋友可以参考下
    2023-05-05
  • java的接口解耦方式

    java的接口解耦方式

    这篇文章主要介绍了java的接口解耦方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • StringUtils中的isEmpty、isNotEmpty、isBlank和isNotBlank的区别详解

    StringUtils中的isEmpty、isNotEmpty、isBlank和isNotBlank的区别详解

    这篇文章主要介绍了StringUtils中的isEmpty、isNotEmpty、isBlank和isNotBlank的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • java 重定义数组的实现方法(与VB的ReDim相像)

    java 重定义数组的实现方法(与VB的ReDim相像)

    java 重定义数组的实现方法(与VB的ReDim相像),需要的朋友可以参考一下
    2013-04-04
  • 简单讲解奇偶排序算法及在Java数组中的实现

    简单讲解奇偶排序算法及在Java数组中的实现

    这篇文章主要介绍了奇偶排序算法及Java数组的实现,奇偶排序的时间复杂度为O(N^2),需要的朋友可以参考下
    2016-04-04
  • SchedulingConfigurer实现动态定时,导致ApplicationRunner无效解决

    SchedulingConfigurer实现动态定时,导致ApplicationRunner无效解决

    这篇文章主要介绍了SchedulingConfigurer实现动态定时,导致ApplicationRunner无效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Spring体系的各种启动流程详解

    Spring体系的各种启动流程详解

    这篇文章主要给大家介绍了关于Spring体系的各种启动流程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Swing拆分窗格控件JSplitPane使用详解

    Swing拆分窗格控件JSplitPane使用详解

    这篇文章主要为大家详细介绍了Swing拆分窗格控件JSplitPane的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • IDEA Maven Mybatis generator 自动生成代码(实例讲解)

    IDEA Maven Mybatis generator 自动生成代码(实例讲解)

    下面小编就为大家分享一篇IDEA Maven Mybatis generator 自动生成代码的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12

最新评论