(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move() 这两个方法分别表示武器的攻击方式和移动方式。 (2)定义3个类:Tank,Fl
代码
/*第一题:(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move()这两个方法分别表示武器的攻击方式和移动方式。(2)定义3个类:Tank,Flighter,WarShip都继承自Weapon,分别用不同的方式实现Weapon类中的抽象方法。编写测试程序main方法,创建多个不同武器的实例。并分别调用attack()和move()方法。能用多态尽量使用多态。*/
public class Homework1 {public static void main(String[] args) {//创建对象Weapon tank = new Tank();Weapon fighter = new Fighter();Weapon warship = new Warship();//调用方法tank.attack();tank.move();System.out.println("---------------------");fighter.attack();fighter.move();System.out.println("---------------------");warship.attack();warship.move();System.out.println("-----------------------");}
}abstract class Weapon{//武器攻击public abstract void attack();//武器移动public abstract void move();
}//坦克类
class Tank extends Weapon{@Overridepublic void attack() {System.out.println("战舰攻击!");}@Overridepublic void move() {System.out.println("战舰移动!");}
}//战斗机类
class Fighter extends Weapon{@Overridepublic void attack() {System.out.println("战斗机攻击!");}@Overridepublic void move() {System.out.println("战斗机移动!");}
}//战舰类
class Warship extends Weapon{@Overridepublic void attack() {System.out.println("战舰攻击!");}@Overridepublic void move() {System.out.println("战舰移动!");}
}
(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move() 这两个方法分别表示武器的攻击方式和移动方式。 (2)定义3个类:Tank,Fl相关推荐
- Java编程---(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move() 这两个方法分别表示武器的攻击方式和移动方式。(2)定义3个类:Tank,Flighter,
题目:(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move() 这两个方法分别表示武器的攻击方式和移动方式. (2)定义3个类:Tank,Flighter,WarShip ...
- 8.编写程序,要求如下: 定义名为VolumeArea的抽象类,在其中定义圆周率的值为3.14159,并定义两个抽象方法volume(double r)和area(double r),它们的返回
8.编写程序,要求如下: 定义名为VolumeArea的抽象类,在其中定义圆周率p的值为3.14159,并定义两个抽象方法volume(double r)和area(double r),它们的返回 ...
- 【python】定义一个“曲调类”Note,value属性表示声音的高低 Note的三个子类分别表示高音、低音和中音定义一个“乐器类”Instrument具有play()方法
# 定义一个"曲调类"Note,value属性表示声音的高低 # a. Note的三个子类分别表示高音.低音和中音 # b. 定义一个"乐器类"Instrume ...
- 教你在Linux上使用ansible写“剧本”,定义一个“剧本”模板后,让控制集群自动执行我们剧本中所写的“剧情”,几个自动化运维的简单实例
目录 1.loop的使用 2.使用when,当条件成立时才执行任务 3.notify和handler的使用 4.tags使用 5.处理任务失败 6. 构建一个jinja2模板 7.forks和seri ...
- java学习(55):定义一个抽象类的继承
不同的是定义一个抽象类先 //抽象类 public abstract class interface4 { public abstract void fly(); public abstract vo ...
- 编写一个抽象类Shape,声明计算图形面积的抽象方法。再分别定义Shape的子类Circle(圆)和Rectangle(矩形),在两个子类中按照不同图形的面积计算公式,实现Shape类中计算面积的方法
编写一个抽象类Shape,声明计算图形面积的抽象方法.再分别定义Shape的子类Circle(圆)和Rectangle(矩形),在两个子类中按照不同图形的面积计算公式,实现Shape类中计算面积的方法 ...
- 设计一个抽象类图形类,在该类中包含有至少两个抽象方法求周长和求面积,分别定义圆形类、长方形类、正方形类、三角形类来继承图形类,并实现上述两个方法
设计一个抽象类图形类,在该类中包含有至少两个抽象方法求周长和求面积,分别定义圆形类.长方形类.正方形类.三角形类来继承图形类,并实现上述两个方法 设计抽象类 就要使用abstract关键字,抽象类中的 ...
- 定义一个抽象类一水果,创建若干水果对象存放在-一个水果类型的数组中,输出数组中所有水果的类型、重量
****定义一个抽象类一水 果,其中包括getWeightQ方法,编写程序分别创建苹果.桃子.橘子3个类,创建若干水果对象存放在-一个水果类型的数组中,输出数组中所有水果的类型.重量.提示:利用对象的 ...
- Java 定义一个抽象类—水果,其中包括getWeight()方法,创建若干水果对象存放在一个水果类型的数组中,输出数组中所有水果的类型、重量。
Java 定义一个抽象类-水果 其中包括getWeight()方法,编写程序分别创建苹果.桃子.橘子3个类,创建若干水果对象存放在一个水果类型的数组中,输出数组中所有水果的类型.重量. 抽象类Frui ...
最新文章
- Windows 8实例教程系列 - 理解应用框架
- 递增的整数序列链表的插入
- 给网页穿上Word马甲
- 多机能同时制造时(对于发现的问题, 【使用】 并记入 【 问题一览 】)。
- 数字化营销如何打造全链路数据统计解决方案
- 【STM32H7的DSP教程】第22章 DSP矩阵运算-放缩,乘法和转置矩阵
- 黑马微信小程序项目实战
- javascript 在线文本编辑器
- 背包问题(Knapsack Problem)—— 完全背包问题 —— (1)背包价值最大
- python自然语言处理实战源代码下载_NLP学习:涂铭《Python自然语言处理实战核心技术与算法》PDF+源代码...
- 【Python零基础到入门】Python基础语法篇——基本数据类型【文末送书】
- debian修改源的方法
- git中提示 please tell me who you are
- php中ceil的用法,php ceil函数怎么用?
- 剑指offer 矩阵中的路径 @python
- 高等数学-曲线积分与曲面积分
- linux ubuntu下安装拳皇97
- 建筑、结构和机电应的建模都要会Revit等软件?提高效率的revit插件?
- watch命令实现Linux监控
- 搭建clearlinux环境
热门文章
- [原创]django+ldap+memcache实现单点登录+统一认证
- spring 国际化-i18n
- “年薪25万只是白菜价”已成过去式,AI 岗位年薪下降8.9%!
- STM32之GPIO原理
- Java 8 八年不倒、IntelliJ IDEA 力压 Eclipse
- 激怒开源社区,微软悄悄删除2500行功能代码后致歉:已恢复!
- 290家公司都在用的任务调度系统,还在Github上开源了
- 那些我当了程序员以后才理解的崩溃瞬间!
- Spring 官宣,干掉原生 JVM!
- Lambda、函数式接口、Stream 一次性全给你