Week4 互评作业 (接口、抽象类练习)

编写一个小的程序,其中定义一些接口、类、抽象类,定义它们的成员(字段及方法), 要求使用使用setter/getter, static, final, abstract,@Override等语法要素,并写一个main函数来使用它们。这些类、接口可以是围绕以下选题之一

飞翔世界:来一次飞翔接力(即多个可飞翔的对象依次调用);

动物世界:来一次吃西瓜大赛;

图书馆:模拟一天的借阅过程;

学校:模拟选课过程;

等等

package week4;

public class FlyGame {
	public static void main(String[] args) {
		Bird bird1 = new Bird();
		bird1.setFlyDistance(10);
		bird1.setType("dujuan");
		Bird bird2 = new Bird();
		bird1.setFlyDistance(20);
		bird1.setType("bugu");
		AirPlane air1 = new AirPlane();
		air1.setFlyDistance(1000);
		air1.setName("by747");
		AirPlane air2 = new AirPlane();
		air2.setFlyDistance(2000);
		air2.setName("dafeiji");
		System.out.println("飞行接力开始");
		air1.fly();
		bird1.fly();
		bird2.fly();
		air2.fly();
		
	}
}

interface flyable{
	void fly();
}

abstract class animal {
	public void eat(){}
	public void sleep(){}
	
}
//鸟类继承动物类,并有飞的能力
class Bird extends animal implements flyable{
	private String type;
	private double flyDistance;
	public String getType() {
		return type;
	}
	public void setType(String type) {
		this.type = type;
	}
	public double getFlyDistance() {
		return flyDistance;
	}
	public void setFlyDistance(double flyDistance) {
		this.flyDistance = flyDistance;
	}
	public static final int maxFlyDistance=100;
	@Override
	public void fly() {
		System.out.println(type+"起飞");
		System.out.println("我飞"+flyDistance+"m");
		System.out.println("降落");
	}
	
}
//飞机实现飞行接口
class AirPlane implements flyable{
	private String name;
	private double flyDistance;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public double getFlyDistance() {
		return flyDistance;
	}
	public void setFlyDistance(double flyDistance) {
		this.flyDistance = flyDistance;
	}
	@Override
	public void fly() {
		System.out.println(name+"起飞");
		System.out.println("我飞"+flyDistance+"m");
		System.out.println("降落");		
		
	}
	
}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值