java作业接口类案例_10-01 Java 类,抽象类,接口的综合小练习–运动员和教练

运动员和教练的案例分析

de02343f68b07ee7b2aa1e72319209fb.bmp

运动运和教练的案例 代码实现

/*

教练和运动员案例

乒乓球运动员和篮球运动员。

乒乓球教练和篮球教练。

为了出国交流,跟乒乓球相关的人员都需要学习英语。

请用所学知识:

分析,这个案例中有哪些抽象类,哪些接口,哪些具体类。

整个分析过程,我是通过画图讲解的。

*/

//定义一个说英语的接口

interface SpeakEnglish {

//说英语

public abstract void speak();

}

//定义人的抽象类

abstract class Person {

private String name;

private int age;

public Person() {}

public Person(String name,int age) {

this.name = name;

this.age = age;

}

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 sleep() {

System.out.println(“人都是要睡觉的”);

}

//吃饭,运动员和教练吃的不一样。这里使用抽象方法

public abstract void eat();

}

//定义运动员抽象类

abstract class Player extends Person {

public Player() {}

public Player(String name,int age) {

super(name,age);

}

//学习,乒乓器和篮球运动员学习的东西不一样。这里使用抽象方法

public abstract void study();

}

//定义教练抽象类

abstract class Coach extends Person {

public Coach() {}

public Coach(String name,int age) {

super(name,age);

}

//教,乒乓器和篮球运动员教的东西不一样。这里使用抽象方法

public abstract void teach();

}

//定义乒乓球运动员具体类

class PingPangPlayer extends Player implements SpeakEnglish {

public PingPangPlayer(){}

public PingPangPlayer(String name,int age) {

super(name,age);

}

//吃

public void eat() {

System.out.println(“乒乓球运动员吃大白菜,喝小米粥”);

}

//学习

public void study() {

System.out.println(“乒乓球运动员学习如何发球和接球”);

}

//说英语

public void speak() {

System.out.println(“乒乓球运动员说英语”);

}

}

//定义篮球运动员具体类

class BasketballPlayer extends Player {

public BasketballPlayer(){}

public BasketballPlayer(String name,int age) {

super(name,age);

}

//吃

public void eat() {

System.out.println(“篮球运动员吃牛肉,喝牛奶”);

}

//学习

public void study() {

System.out.println(“篮球运动员学习如何运球和投篮”);

}

}

//定义乒乓球教练具体类

class PingPangCoach extends Coach implements SpeakEnglish {

public PingPangCoach(){}

public PingPangCoach(String name,int age) {

super(name,age);

}

//吃

public void eat() {

System.out.println(“乒乓球教练吃小白菜,喝大米粥”);

}

//教

public void teach() {

System.out.println(“乒乓球教练教如何发球和接球”);

}

//说英语

public void speak() {

System.out.println(“乒乓球教练说英语”);

}

}

//定义篮球教练具体类

class BasketballCoach extends Coach {

public BasketballCoach(){}

public BasketballCoach(String name,int age) {

super(name,age);

}

//吃

public void eat() {

System.out.println(“篮球教练吃羊肉,喝羊奶”);

}

//教

public void teach() {

System.out.println(“篮球教练教如何运球和投篮”);

}

}

class InterfaceDemo {

public static void main(String[] args) {

//测试运动员(乒乓球运动员和篮球运动员)

//乒乓球运动员

PingPangPlayer ppp = new PingPangPlayer();

ppp.setName(“王浩”);

ppp.setAge(33);

System.out.println(ppp.getName()+”—“+ppp.getAge());

ppp.eat();

ppp.sleep();

ppp.study();

ppp.speak();

System.out.println(“—————-“);

//通过带参构造给数据

ppp = new PingPangPlayer(“刘洋”,36);

System.out.println(ppp.getName()+”—“+ppp.getAge());

ppp.eat();

ppp.sleep();

ppp.study();

ppp.speak();

System.out.println(“—————-“);

//篮球运动员

BasketballPlayer bp = new BasketballPlayer();

bp.setName(“姚明”);

bp.setAge(34);

System.out.println(bp.getName()+”—“+bp.getAge());

bp.eat();

bp.sleep();

bp.study();

//bp.speak(); //没有该方法

}

}

java类,接口浅谈

一般类,抽象类,接口的使用场景: 类;共同的特征和行为的抽取和封装 接口:标准,规范(功能的扩展)         需要对某个类进行功能的扩展,就让某个类实现这个接口,抽取出来称为接口   内部类: …

要创建一个EJB,必须要至少编写哪些Java类和接口p>

要创建一个EJB,必须要至少编写哪些Java类和接口. 定义远程(或业务)接口 B. 定义本地接口 C. 定义Bean接口 D. 编写Bean的实现 解答:ABC

Java 类、接口的API

本章节收集的类/接口API有: Object类,枚举,包装类,接口Comparable,类Arrays,Thread类,System类,Math,BigInteger,Random,日期时间,异常 O …

第10章 Java类的三大特性之一:多态

1.Java中的多态 多态是指对象的多种形态,主要包括这两种: 1.1引用多态 a.父类的引用可以指向本类的对象b.父类的引用可以指向子类的对象举个例子:父类Anmail,子类Dog,可以使用父类An …

[Java] 类和接口的初始化步骤 – 继承方面

类和接口在初始化化时,处理继承层级的方法不一样. 类继承的初始化:通过引用 static 字段,触发某个类的初始化,则声明该字段的类,以及该类的父类被初始化. 接口继承的初始化:通过引用 static …

java9-1.类,抽象类,接口的综合小练习

/* 教练和运动员案例(学生分析然后讲解) 乒乓球运动员和篮球运动员. 乒乓球教练和篮球教练. 为了出国交流,跟乒乓球相关的人员都需要学习英语. 请用所学知识: 分析,这个案例中有哪些抽象类,哪些接口 …

c#中接口、抽象类、继承综合小练习

namespace Test { class Program { static void Main(string[] args) { //作业:橡皮rubber鸭子.木wood鸭子.真实的鸭子real …

EFFECTIVE JAVA 类和接口

第十六条:复合优先于继承 //这是一个不好的类—执行的结果 addCount = 4(addAll的实现依赖于HashSet的add方法,InstrumentHashSet方法重写了add方法有执 …

随机推荐

使用eclipse开发Java web应用

C# 编译JS -Evaluator

忘记哪里转过来的,自己mark一下 /// 动态求值 /// public class Evaluator { /// &l …

asp.net全局记住值

每个 页都要记住名字和密码! 在Page_Load中写如下代码: Session[“起个名字”]=要赋值的; 在显示的时候写 Response.write(Session[“当时起的名字”.ToStr …

ACM2034

/*人见人爱A-BProblem Description参加过上个月月赛的同学一定还记得其中的一个最简单的题目,就是{A}+{B},那个题目求的是两个集合的并集,今天我们这个A-B求的是两个集合的差, …

[Git]Git安装

1.什么是Git Git是一个分布式版本控制/软件配置管理软件, git是用于Linux内核开发的版本控制工具, 与CVS.Subversion一类的集中式版本控制工具不同,它采用了分布式版本库的作法 …

Duplicate Protocol Definition of DTService Is Ignored

1.  很多的情况是由于重复导入Protocol导致的. 例如:import “Protocol1.h” import “Protocol1.h” 在同一项目中 …

Linux目录树详细说明

Linux目录树详细说明 目录树的主要部分有root(/)./USR./var./home等等.下面是一个典型的linux目录结构如下: / 根目录 /bin 存放必要的命令 /boot 存放内核以及 …

laravel sum 多个字段

laravel中怎么实现下面的SQL select sum(‘profit’),sum(‘order_count’) from pro where……; 参考 self::where(‘id’ …

通过sqlalchemy操作mysql

# 安装 pip3 install sqlalchemy import sqlalchemy from sqlalchemy import create_enginefrom sqlalchemy.e …

Myeclipse加载php插件

下载PHPEclipse-1.2.3.200910091456PRD-bin.zip 解压缩后.发现内容包含:两个目录features和plugins,一个xml文件site.xml 全部扔进myec …

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树类和接口类和面向对象92569 人正在系统学习中 相关资源:鸿威台球室计费系统说明书_棋牌室管理系统-专业指导文档资源…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月22日
下一篇 2021年1月22日

相关推荐