Java编程---(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move() 这两个方法分别表示武器的攻击方式和移动方式。(2)定义3个类:Tank,Flighter,
题目:(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move()
这两个方法分别表示武器的攻击方式和移动方式。
(2)定义3个类:Tank,Flighter,WarShip都继承自Weapon,
分别用不同的方式实现Weapon类中的抽象方法。
编写测试程序main方法,创建多个不同武器的实例。并分别调用attack()和move()方法。
能用多态尽量使用多态。
代码实现:
public class AttackTest {public static void main(String[] args) {Weapon w1 = new Tank();w1.attack();w1.move();Weapon w2 = new Flighter();w2.attack();w2.move();Weapon w3 = new WarShip();w3.attack();w3.move();}
}
//父类(武器类)
abstract class Weapon{public abstract void attack();public abstract void move();
}//子类
//坦克
class Tank extends Weapon{public void attack(){System.out.println("坦克开炮!!");};public void move(){System.out.println("坦克缓慢移动!");};
}
//战斗机
class Flighter extends Weapon{public void attack(){System.out.println("战斗机狂轰乱炸!");};public void move(){System.out.println("战斗机在天空中快速移动!");};
}
//军舰
class WarShip extends Weapon{public void attack(){System.out.println("军舰开炮!");};public void move(){System.out.println("军舰在海上移动!");};
}
结果:
Java编程---(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move() 这两个方法分别表示武器的攻击方式和移动方式。(2)定义3个类:Tank,Flighter,相关推荐
- (1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move() 这两个方法分别表示武器的攻击方式和移动方式。 (2)定义3个类:Tank,Fl
代码 /*第一题:(1)定义一个抽象类Weapon,该抽象类有两个抽象方法attack(),move()这两个方法分别表示武器的攻击方式和移动方式.(2)定义3个类:Tank,Flighter,War ...
- 【Java编程】建立一个简单的JDBC连接-Drivers, Connection, Statement and PreparedStatement
本blog提供了一个简单的通过JDBC驱动建立JDBC连接例程.并分别通过Statement和PreparedStatement实现对数据库的查询. 在下一篇blog中将重点比較Statement与P ...
- 提高java效率_提高Java编程效率的一个技巧
我们在用Eclipse等IDE进行Java开发时,对于复制.粘贴等操作,我们最常用的是Ctrl+C和Ctrl+V,甚至是用鼠标右键进行操作.其实效率最高的操作方式应该还是命令行或快捷键操作方式.编程界 ...
- java实现123n_用Java编程 :输入一个正整数n,输出n!的值。 其中n!=1*2*3*…*n。 求高手指点...
展开全部 给你写了个程序可以实现,比如32313133353236313431303231363533e4b893e5b19e31333332643235在主函数输入5,则输出表示5!(120)的数组 ...
- java编程:设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声
要求:1.编写抽象类Animal 2.编写模拟器类Simulator 3.编写Animal类的子类:Dog和Cat类 4.编写主 ...
- java随机数生成1到12_如何用java编程实现“产生一个1-12的数,并根据随机数的值输出对应月份的名称”?...
展开全部 public String getMonthName() { int month = (int) (Math.random() * 12 + 1); switch (month) { cas ...
- C++,Java编程空指针的一个小细节
//判断是否击中了敌人坦克if (hero.shot!=null && hero.shot.isLive ){for (int i = 0;i<enemyTanks.size() ...
- java编程实现删除一个文件夹_Java实现文件夹删除方式总结详解
1 ,通用的文件夹或文件删除方法,直接调用此方法,即可实现删除文件夹或文件,包括文件夹下的所有文件 /** * 根据路径删除指定的目录,无论存在与否 *@param sPath 要删除的目录pat ...
- java设计求圆的面积周长的代码_java编程 1.设计一个求圆的面积和周长的类,要求:1计算当半径r=10和20时,圆的面积,并显示出来 、...
导航:网站首页 > java编程 1.设计一个求圆的面积和周长的类,要求:1计算当半径r=10和20时,圆的面积,并显示出来 . 时间:2018-11-8 java编程 1.设计一个求圆的面积和 ...
最新文章
- ASPxGridView之PreviewRow
- python学费多少-2020年10月徐州学python要多少学费
- C++11特性:override
- 00075_BigInteger
- labview如何弹出提示窗口_以实例跟我学如何将LabVIEW的VI程序打包成安装程序
- 安卓案例:利用SQLiteDatabase操作数据库与表
- postman汉化包下载
- 学习单片机的三个步骤
- 计算机主机插槽图,图片解说看个透 教你认识主板上的插槽
- openstreetmap_kubernetes中的openstreetmap tile服务器
- sqldbx mysql 乱码_使用PLSQL Developer和DbVisualizer、SQLDBx查询oracle数据库时出现乱码...
- Xubuntu22.04之连接filco蓝牙键盘
- 使用Google Colab运行项目
- css 网页自适应 @media screen详解
- C语言五子棋评分函数,五子棋评分表算法
- 豆豆趣事[2015年08月]
- Django用admin开发的幼儿园薪资管理系统-2
- 2017-2018 2 20179214《网络实践攻防》第三周作业(一)
- 校内互测 B. 王者荣耀 (二分答案+dp)
- 手机设置代理连接PC Fiddler后未连接网络,网页打不开