编写一个小的程序,其中定义一些接口、类、抽象类,定义它们的成员(字段及方法), 要求使用使用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;@Overridepublic 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;}@Overridepublic void fly() {System.out.println(name+"起飞");System.out.println("我飞"+flyDistance+"m");System.out.println("降落");       }}

Week4 互评作业 (接口、抽象类练习)相关推荐

  1. Java程序设计 北京大学 Week9互评作业

    java程序设计mooc攻略 单元测验 互评作业 考试 week1测验 2019冬期中测验 week2测验 week2互评作业 2019冬期末测验 week3测验 week3互评作业 week4测验 ...

  2. Java程序设计 北京大学 Week2互评作业

    java程序设计mooc攻略 单元测验 互评作业 考试 week1测验 2019冬期中测验 week2测验 week2互评作业 2019冬期末测验 week3测验 week3互评作业 week4测验 ...

  3. Java程序设计 北京大学 Week3互评作业

    java程序设计mooc攻略 单元测验 互评作业 考试 week1测验 2019冬期中测验 week2测验 week2互评作业 2019冬期末测验 week3测验 week3互评作业 week4测验 ...

  4. Java程序设计 北京大学 Week8互评作业

    java程序设计mooc攻略 单元测验 互评作业 考试 week1测验 2019冬期中测验 week2测验 week2互评作业 2019冬期末测验 week3测验 week3互评作业 week4测验 ...

  5. C++中的接口(抽象类)

    1.Cpp中的接口(抽象类) 接口描述了类的行为和功能,而不需要完成类的特定实现.接口是使用抽象类来实现的,抽象类与数据抽象互不混淆,数据抽象是一个把实现细节与相关的数据分离开的概念.如果类中至少有一 ...

  6. C++ 接口(抽象类)

    该博文为原创文章,未经博主同意不得转载,如同意转载请注明博文出处 本文章博客地址:https://cplusplus.blog.csdn.net/article/details/105020800 接 ...

  7. jdk8 接口抽象类区别_JDK 8时代的抽象类与接口

    jdk8 接口抽象类区别 在新的Java 8日期和时间API:Stephen Colebourne的访谈中 , Stephen Colebourne告诉Hartmut Schlosser :" ...

  8. 12.面向对象(继承/super/接口/抽象类)

    面向对象 继承与派生 继承 继承顺序 继承原理 子类调用父类的方法(super) 组合 接口 接口的概念: 接口的概念解释和使用: python中的接口: 抽象类 面向对象 继承与派生 继承 什么是继 ...

  9. 重写,重载,抽象类,接口,抽象类和接口区别

    1.多态之重写,重载     重写:当一个子类继承一父类,而子类中的方法与父类中的方法的名称,参数个数.类型都完全一致时,就称子类中的这个方法重写了父类中的方法.     new,virtual,ov ...

最新文章

  1. C语言双链表遍历,插入,删除
  2. 还在写大量 if 来判断?试试用一个规则执行器来替代它
  3. Python 获取图片文件大小并转换为base64编码
  4. Matlab 2012安装图解
  5. c 和 java 差异_java和C/C++的差异是什么
  6. mysql 命令行 主从复制_MySQL 的主从复制(高级篇)
  7. Java面试——Redis系列总结
  8. java中super关键字的用法
  9. 忘记 Apple Watch PIN 码,如何解锁 Apple Watch?
  10. 设置Webdriver启动chrome为默认用户的配置信息
  11. PIL图像处理-二值化
  12. 多进程中之文件描述符继承的消除
  13. java虚无世界_我的世界1.7.10工业虚无整合包
  14. 详解Python中列表切片及浅拷贝的关系(上)
  15. SQLServer The datediff function resulted in an overflow
  16. 哈曼卡顿连接电脑后,突然变的声音好小的解决办法
  17. 校招前端笔试面试回顾
  18. Collections与Comparator
  19. 图解PCB布线数字地、模拟地、电源地,单点接地抗干扰!
  20. java---制表符

热门文章

  1. 公司算法面试笔试题目集锦,个人整理,不断更新中
  2. 书评《半小时漫画中国史》
  3. 图说职场贴士:护航职场的八力
  4. C++ 类与对象_类的其他成员(常成员,静态成员,友元)
  5. 九连环课程设计c语言,九连环C语言程序
  6. 从管好事提升管理水平--创建事
  7. 三个字母的单词颠倒也是单词_世界上最强大的两个字母的单词
  8. 办公技巧:常用的100个Word快捷键
  9. python金融分析小知识(34)——年化收益率、年化波动率以及夏普比率的计算
  10. 怎么关闭win10虚拟机服务器,如何关闭Win10自带虚拟机?三种关闭Win10专业版系统hyper-v虚拟机的方法...