java-接口之运动员教练员综合案例
来源:互联网 发布:数据备份的管理规范 编辑:程序博客网 时间:2024/04/27 21:30
案例需求:
教练员:
乒乓球教练员,篮球教练员
运动员:
乒乓球运动员,篮球运动员
要求:乒乓球教练员和乒乓球运动员必须要学习必要的英语。
需求分析:
篮球,乒乓球教练员都是教练员,而且教练员不是具体的哪一类,所以是抽象类。
篮球,乒乓球运动员都是运动员,而且运动员不是具体的哪一类,所以也是抽象类。
教练员和运动员都是人,所以需要定义一个抽象父类人类。
由于特定了一些人需要学外语,所以定义一个英语接口功能。
具体实现如下:
接口:
package com.hause.day10;public interface SpeakEnglish {public void speak();}
人类:
package com.hause.day10;public abstract class Person {private String name;private int age;public abstract void eat();public void sleep(){System.out.println("人都要睡觉!");}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public void show(){System.out.println("姓名:"+name+"年龄:"+age);} }
教练员类:
package com.hause.day10;public abstract class Coach extends Person{public abstract void teach();}运动员类:
package com.hause.day10;public abstract class Player extends Person { public abstract void study();}乒乓教练员类:
package com.hause.day10;public class PingPangCoach extends Coach implements SpeakEnglish{public void speak() {System.out.println("乒乓球教练交运动员打乒乓球的同时还要学习英语!");}public void teach() {System.out.println("乒乓球教练交运动员打乒乓球!");}public void eat() {System.out.println("乒乓球教练吃乒乓球教练的饭!");}}
篮球教练员类:
package com.hause.day10;public class BasketCoach extends Coach {public void teach() {System.out.println("篮球教练教授运动员打篮球!");}public void eat() {System.out.println("篮球教练吃篮球教练的饭!");}}
乒乓运动员类:
package com.hause.day10;public class PingPang extends Player implements SpeakEnglish {public void study() {System.out.println("乒乓球运动员学习打乒乓球!");}public void eat() {System.out.println("乒乓球运动员吃乒乓球的饭!");}public void speak() {System.out.println("乒乓球运动员学习打乒乓球时候还要学习英语!");}}
篮球运动员类:
package com.hause.day10;public class Basketball extends Player{public void study() {System.out.println("篮球球运动员学习打篮球球!");}public void eat() {System.out.println("篮球球运动员吃篮球球的饭!");}}
测试类:
package com.hause.day10;/* *具体类调用 * */public class Main { public static void main(String[] args) {//创建乒乓球与动员对象PingPang pp = new PingPang();pp.setName("李春男");pp.setAge(25);pp.show();pp.eat();pp.study();pp.sleep();pp.speak();System.out.println("************************");//创建乒乓球教练对象PingPangCoach ppp = new PingPangCoach();ppp.setName("河南科技大学");ppp.setAge(26);ppp.show();ppp.eat();ppp.teach();ppp.sleep();ppp.speak();System.out.println("******************************************");//创建篮球运动员对象Basketball bb = new Basketball();bb.setName("杨莉");bb.setAge(22);bb.show();bb.study();bb.eat();bb.sleep();System.out.println("******************************************"); //创建篮球教练对象BasketCoach bc = new BasketCoach();bc.setName("杨莉");bc.setAge(22);bc.show();bc.teach();bc.eat();bc.sleep();}}
输出:
姓名:李春男年龄:25
乒乓球运动员吃乒乓球的饭!
乒乓球运动员学习打乒乓球!
人都要睡觉!
乒乓球运动员学习打乒乓球时候还要学习英语!
************************
姓名:河南科技大学年龄:26
乒乓球教练吃乒乓球教练的饭!
乒乓球教练交运动员打乒乓球!
人都要睡觉!
乒乓球教练交运动员打乒乓球的同时还要学习英语!
******************************************
姓名:杨莉年龄:22
篮球球运动员学习打篮球球!
篮球球运动员吃篮球球的饭!
人都要睡觉!
******************************************
姓名:杨莉年龄:22
篮球教练教授运动员打篮球!
篮球教练吃篮球教练的饭!
人都要睡觉!
阅读全文
1 0
- java-接口之运动员教练员综合案例
- java--面向对象之抽象类和接口综合案例
- java综合之 链表 接口 Object对象
- 《java入门第一季》之面向对象综合小案例
- UI基础控件综合案例之Java代码编写
- 教练和运动员案例
- 类和接口的综合案例
- state框架分析,多态,接口,综合案例
- Java数组基础综合案例
- ajax综合案例之瀑布流
- ajax综合案例之用户管理系统
- springcloud入门之综合入门小案例
- Java面向对象-String类综合案例
- Java面向对象-String类综合案例
- java--面向对象综合案例一
- 综合/案例
- 综合案例
- 综合案例
- CentOS 6.4安装LibreOffice及字体安装
- yum 安装 VSFTPD
- asp.net mvc4应用程序发布、部署、常见问题
- automaticallyAdjustsScrollViewInsets
- 如何在eclipse下的tomcat中更改项目访问url
- java-接口之运动员教练员综合案例
- Oracle数据库的知识点总结(PL/sql)
- Ansible部署Java
- 根据二叉树的先序遍历和中序遍历重建二叉树
- CSS隐藏元素 display visibility opacity的区别
- HTML5新特性与CSS基础
- P2P,UDP和TCP穿透NAT
- 第五次作业回顾
- 公共JS