Java(9)接口练习 运动员和教练

需求:我们现在有乒乓球运动员和篮球运动员,乒乓球教练和篮球教练。为了出国交流,跟乒乓球相关人员都要学习英语,请用所有知识分析,这个案例中有哪些具体类,哪些抽象类,哪些接口,并用代码实现。

思路:

  1. 定义说英语的接口
  2. 定义抽象类人类
  3. 定义抽象类 教练类,继承人类
  4. 定义抽象运动员类,继承人类
  5. 定义篮球教练类,继承教练类
  6. 定义乒乓球教练类,继承教练类,实现英语接口类
  7. 定义篮球运动员类,继承运动员类
  8. 定义乒乓球运动员类,继承运动员类,实现说英语接口
  9. 定义测试类,写代码测试
package coachAndSportsman;

public interface SpeakEnglish {
   
	public abstract void English();
}

package coachAndSportsman;

public abstract class Human {
   
	private String name;
	private String age;
	
	
	public Human() {
   
		super();
	}
	public Human(String name, String age) {
   
		super();
		this.name = name;
		this.age = age;
	}
	
	
	public String getName() {
   
		return name;
	}
	public void setName(String name) {
   
		this.name = name;
	}
	public String getAge() {
   
		return age;
	}
	public void setAge(String age) {
   
		this.age = age;
	}
	
	public abstract void Eeat();
}

package coachAndSportsman
开课实验室:现代信息交流中心403 开课时间: 2019年**月**日 实验报告: 2019年 11月 9日 "学院 "信息工程学"年级、 "软件1803班 "学号 "20180822 " "名称 "院 "专业、 " " " " " " "班 " " " " "实验类型 "验证 综合 设计 创新 "成绩 " " "教" " "师"教师签名: " "评"年 月 日 " "语" " 1. 实验目的:熟悉掌握Java中的面向对象编程,包括类、继承多态等面向对象方法 。 2. 实验内容: 1. 编写一个圆类Circle,该类拥有: (1)属性radius; (2)构造方法Circle()Circle(double r) (3)成员方法: double getArea() double getPerimeter() void show()//显示半径、周长面积 编写一个圆柱体Cylinder,它继承上面的Circle类,还拥有: (1)属性hight (2)构造方法Cylinder(double r, double h) (3)成员方法 double getVolume() void showVolume() 编写测试类,创建上面两个类的对象,并运行其中的方法。 2. 创建一个Vehicle类并将它声明为抽象类。在Vehicle类中声明一个NumOfWheels方法,用 于显示车轮的数量。 创建两个类CarMotorbike从Vehicle类继承,并在这两个类中实现NumOfWheels方法。 在Car类中,应当显示"四轮车"信息; 而在Motorbike类中,应当显示"双轮车"信息。 创建一个带main方法的类,在该类中创建CarMotorbike的实例,并在控制台中显示消 息。 3. 采用类、继承、接口等面向对象思维来设计教练运动员: (1)乒乓球运动员篮球运动员 (2)乒乓球教练篮球教练 (3)为了出国交流,跟乒乓球相关的人员都需要学习英语。 提示:重点考虑类中属性、方法类间层次关系,并编程实现。 3. 源代码清单: 1.源代码清单 package text1; public class Circle { double radius; Circle(){ radius=0; } Circle(double radius){ this.radius=radius; } double getArea(){ return radius*radius*Math.PI; } double getPerimeter(){ return radius*Math.PI*2; } void show(){ System.out.println("半径:"+radius+"周长:"+getPerimeter()+"面积:"+getArea( )); } } public class Cylinder extends Circle{ double hight; Cylinder(double r, double h){ this.radius=r; this.hight=h; } double getVolume(){ return getArea()*hight; } void showVolume(){ System.out.println("体积:"+getVolume()); } public static void main(String args[]) { Circle a = new Circle(4); Cylinder b= new Cylinder(4,6); a.show(); b.showVolume(); } } 2.源代码清单 package text1; abstract class Vehicle { abstract void NumOfWheels(); } public class Car extends Vehicle{ void NumOfWheels(){ System.out.println("四轮车"); } } public class Motorbike extends Vehicle{ void NumOfWheels(){ System.out.println("双轮车"); } public static void main(String args[]){ Car a = new Car(); Motorbike b= new Motorbike(); a.NumOfWheels(); b.NumOfWheels(); } } 3. 源代码清单 package shiyan3; abstract class person { public void show() { Syst
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值