(一)、写一个怪物的类,类中有属性姓名(name),攻击力(attack),有打人的方法(fight)。(方法的重写)...
再写两个子类:
红猪的类:类中有属性姓名(name),攻击力(attack),颜色(color)。红猪也有一个打人的方法(fight),要求在此方法中输出“XX猪是XX颜色的,打掉了人XX点血”。
蛇类:类中有属性姓名(name),有攻击力属性(attack),有几条脚属性(foot)。蛇也有一个打人的方法
(fight),要求在此方法中输出“XX蛇用XX条脚跑到人面前去打人,打掉了人XX点血”。
写一个测试类,生成一只红猪,调用此红猪的打人方法,观察结果。再生成一条蛇,调用此蛇的打人方法。
(注意:代码的重用,及方法重写带来的多态行为)
String name;
int attack;
public void fight(){
}
package monster;
String a1=super.name="s";
int a2=super.attack=2;
String color="红色";
@Override
public void fight() {
// TODO Auto-generated method stub
System.out.println(a1+"猪是 "+color+"颜色的"+",打掉了人"+a2+"点血");
}
package monster;
int foot=10;
String a1=super.name="se";
int a2=super.attack=112;
String color="红色";
public void fight() {
// TODO Auto-generated method stub
System.out.println(a1+"蛇用 "+foot+"条脚到人面前去打人,"+",打掉了人"+a2+"点血");
}
package monster;
// TODO Auto-generated method stub
Redpig pig=new Redpig();
pig.fight();
se ss=new se();
ss.fight();
(二)、写一个枪类(Gun),类中有属性:品种(进口枪还是国产枪)type,重量weight。还有一个开枪的方法(shoot),输出“开枪了”。两个子类是:
手枪类(HandGun):类中有属性品种,重量。还有一个开枪的方法,输出“XX品种的手枪,重XX公斤,一颗子弹打出去了”。
机枪类(machineGun):类中有属性品种,重量。还有一个开枪的方法,输出“XX品种的机枪,重XX公斤,一连串的子弹打出去了”。
测试类中定义一个枪的变量,用此变量记录一个手枪的对象,调用这把枪的开枪方法,注意观察输出的结果,是调用的枪的开枪方法,还是调用的手枪的开枪方法。再生成一把机枪的对象放入到这个枪的变量中去,又调用这把枪的开枪方法,观察结果。
(注意:把儿子当老子看后,调用的方法还是儿子的)
public Bullen() {
super();
super.Power=100.2;
super.speed=2222;
this.type="机枪子弹";
// TODO Auto-generated constructor stub
}
private String type;
return type;
}
this.type = type;
}
public void Attack(){
System.out.println("我是"+getType()+", 速度"+this.speed+",攻击力"+super.Power);
}
private String dir;
public Tank() {
super();
super.Power=100.32;
super.speed=10000;
this.dir="上";
// TODO Auto-generated constructor stub
}
return dir;
}
this.dir = dir;
}
public void Attack(){
System.out.println("我是坦克,向"+getDir()+"方向运动,速度"+this.speed+",攻击力"+super.Power);
}
package weaoan;
double Power;
double speed;
public Weapen() {
// TODO Auto-generated constructor stub
}
}
package weaoan;
public static void main(String[] args) {
Tank tk=new Tank();
tk.Attack();
Bullen Bl=new Bullen();
Bl.Attack();
}
}
转载于:https://www.cnblogs.com/www-hsy-com/p/8111645.html
(一)、写一个怪物的类,类中有属性姓名(name),攻击力(attack),有打人的方法(fight)。(方法的重写)...相关推荐
- java攻击力与命中_JAVA写一个怪物的类,类中有属性姓名,攻击力,有打人的方法。...
展开全部 //filename:Monster.java public interface Monster { public String getName(); public Integer getA ...
- 写一个不能被继承的类(友元的不可继承性)
template<class T> class A { public:friend T; private:A() {}~A() {} };class B:virtual public A& ...
- java乐器_用java新建一个乐器类,包含属性:名称、重量、品牌、价格;包含方法:不带参数的构造方法、表演方法...
展开全部 /** * 乐器类 */ public class Instrument { //名称 private String name; //重量 private String weight; // ...
- 工厂模式,设计电话卡类,具有属性姓名,具有动作计费,电话卡片分成 联通和移动,要求在控制台中输入联通 就能通过工厂生成一个联通的联通卡的对象,输入移动生成移动卡的对象,然后分别调用各自的计费方式打印出
package com.Telephone;/*** @Author: 廾匸* @Date: 2020/11/6 21:21* @Description: 电话卡类* @version: 1.01*/ ...
- java写一个web服务器_Java实现web服务器功能(简版) | kTWO-个人博客
package kTWOServer; import java.io.* ; import java.net.* ; import java.util.* ; final class HttpRequ ...
- 自己写一个数据库连接工具类
最近刚复习了一下JDBC相关的知识,这里来写一个mysql数据库连接工具类来练习一下. 在jdbc连接数据库时,Connection对象是非常稀有的资源,用完后必须马上释放,如果Connection不 ...
- 使用回调方式写POI导入excel工具类
场景是这样的:为了做一个excel导入的功能,为了尽可能的写一个通用的工具类,将与poi有关的东西都封装起来,以便以其他人员只用关心自己的业务,不用和poi打交道. 写到最后,现在还是会有poi的东西 ...
- java 手编线程池_死磕 java线程系列之自己动手写一个线程池
欢迎关注我的公众号"彤哥读源码",查看更多源码系列文章, 与彤哥一起畅游源码的海洋. (手机横屏看源码更方便) 问题 (1)自己动手写一个线程池需要考虑哪些因素? (2)自己动手写 ...
- 写一个通用数据访问组件
出处:http://www.csharp-corner.com willsound(翻译) 我收到过好多Email来问我如何用一个通用的数据提供者(data provider)在不失自然数据提供者(n ...
最新文章
- arm linux移植jvm,JVM的ARM移植.PDF
- java判断星期天_java实现一个月的最后一个星期天
- 对js面向对象的理解
- Excel分列功能的妙用
- Bumblebee微服务网关之consul服务发现
- 修复png bug的脚本
- springboot webservice cxf 客户端调用
- 燃气灶电气线路图及原理_一位造价大神的电气工程造价知识整理笔记_深圳电气造价预算培训要多少钱...
- 2020年豪华车市场洞察
- 【Java】判断某值是否在数组中,使用Arrays类
- 深度学习(十九)基于空间金字塔池化的卷积神经网络物体检测
- 内存中的fas和lsp
- GIS应用技巧之制作土地利用转移矩阵表
- 【每日一P】利用通道抠图更换天空
- JAVA当前时间timestamp_java获取获得Timestamp类型的当前系统时间
- 网络攻击中常见掩盖真实IP的攻击方式及虚假IP地址追踪溯源方法
- B016 - 基于51单片机的公交车语音报站_点阵广告屏
- PL330 DMAC笔记(2) - DMAC接口,状态机,初始化,APB slave接口
- 芝麻代理、豌豆代理、品易代理……市面上那么多HTTP代理,要怎么挑?
- 使用单变量求解进行函数的逆运算
热门文章
- TextView添加中划线、下划线等
- 使用bootstrap实现freeCodeCamp上Build a Personal Portfolio Webpage
- java实现统计pv和uv_shell统计pv与uv、独立ip的方法
- KVM虚拟化平台搭建、工作模式与原理
- 怎样做好邮箱安全,什么邮箱安全又好用,如何安全管理邮箱
- IntelliJ IDEA 官方网站
- 打字时全部是繁体字,如何改为简体中文?
- 听书 app,学习用途
- 2018 谷歌 Google I/O 简介 总结
- C++: #define中的三个特殊符号:#,##,#@