Java三大特性之继承性的习题

本文通过一系列的编程练习详细介绍了Java的继承特性。涉及交通工具、计算类、居民类及其派生类、汽车类的继承与方法覆盖,以及银行账户类的设计,包括普通账户和可透支账户的实现,强调了super关键字和方法重写的应用。
摘要由CSDN通过智能技术生成

【练习题】1.继承:
定义一个名为Vehicles(交通工具)的基类(父类),该类中应包含String类型的成员属性brand(商标)和color(颜色),还应包含成员方法run(行驶,在控制台显示“我已经开动了”)和showInfo(显示信息,在控制台显示商标和颜色),并编写构造方法初始化其成员属性。
编写Car(小汽车)类继承于Vehicles类,增加int型成员属性seats(座位),还应增加成员方法showCar(在控制台显示小汽车的信息),并编写构造方法。 编写Truck(卡车)类继承于Vehicles类,增加float型成员属性load(载重),还应增加成员方法showTruck (在控制台显示卡车的信息),并编写构造方法。 在main方法中测试以上各类。
代码实现:
1、Vehicles类:

package home.work;

public class T1_Vehicles {
	String brand;// 商标
	String color;

	public T1_Vehicles() {
	}

	public T1_Vehicles(String brand, String color) {
		this.brand = brand;
		this.color = color;
	}

	public void run() {
		System.out.println("我已经开动了!");
	}

	public void showInfo() {
		System.out.println("商标是:" + brand + ";颜色是:" + color);
	}
}

2、Car类:

package home.work;

public class T1_Car extends T1_Vehicles {
	int seats;// 座位

	public T1_Car() {
	}

	public T1_Car(int seats, String brand, String color) {
		super.brand = brand;
		super.color = color;
		this.seats = seats;
	}

	public void showCar() {
		System.out.println("商标是:" + brand + ";颜色是:" + color + ";座位是" + seats + "个");
	}
}

3、Truch类:

package home.work;

public class T1_Truck extends T1_Vehicles {
	float load;// 载重

	public T1_Truck(float load, String brand, String color) {
		super.brand = brand;
		super.color = color;
		this.load = load;
	}

	public void showTruck() {
		System.out.println("商标是:" + brand + ";颜色是:" + color + ";载重是:" + load + "吨");
	}
}

4、Text测试类:

package home.work;

public class T1_Text {
	public static void main(String[] args) {
		T1_Vehicles v = new T1_Vehicles("奥迪", "白色");
		v.showInfo();
		T1_Car c = new T1_Car(5, "奔驰", "黑色");
		c.showCar();
		T1_Truck t = new T1_Truck(20.5f, "弗兰德", "蓝色");
		t.showTruck();
	}
}

运行结果展示:
在这里插入图片描述
【练习题】2.继承
编写一个类Calculate1,实现加、减两种运算,然后,编写另一个派生类Calculate2,实现乘、除两种运算。
代码实现:
1、Calculate1类:

	package home.work;
	public class T2_Calculate1 {
		public double add(double a, double b) {
			System.out.println(a + "+" + b + "=" + (a + b));
			return a + b;
		}
	
		public double app(double a, double b) {
			System.out.println(a + "-" + b + "=" + (a - b));
			return a - b;
		}
	}

2、Calculate2类:

package home.work;

public class T2_Calculate2 extends T2_Calculate1 {
	public double cheng(double a, double b) {
		System.out.println(a + "*" + b + "=" + (a * b));
		return a * b;
	}

	public double chu(double a, double b) {
		System.out.println(a + "/" + b + "=" + (a / b));
		return a / b;
	}
}

3、Text测试类:

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值