JAVA实验3 类与对象

实验要求:

掌握类与对象的基本思想

能够熟练地使用Java设计并编写类

能够灵活运用各种对象

 

实验内容:

 

希腊神话中,宙斯战胜了泰坦之后成为众神之王,以此为背景,通过构造相应对象、属性和方法,并用随机的方式,模拟宙斯与泰坦的战斗过程。

 

构建类Titan,要求如下:

整形字段HP,以及相应的gettersetter

空参数列表构造方法Titan(),创造出的HP默认为700

带参数构造方法Titan(int HP),创造出指定HP的对象

方法attack(Zues z),参数为宙斯对象,每次调用此方法后,用随机数的方式,随机产生10-100的整数伤害,减少参数宙斯对象的HP并且攻击结果需要在控制台输出,格式为“泰坦攻击宙斯,产生**点伤害,宙斯当前HP**

 

构建类Zues,要求如下:

整形字段HP,以及相应的gettersetter

空参数列表构造方法Zues (),创造出的HP默认为1000

带参数构造方法Zues (int HP),创造出指定HP的对象

方法attack(Titan t),参数为泰坦对象,每次调用此方法后,用随机数的方式,随机产生0-70的整数伤害,减少参数泰坦对象的HP,并且攻击结果需要在控制台输出,格式为“宙斯攻击泰坦,产生**点伤害,泰坦当前HP**”。

 

构建类ClashofTitans,要求如下:

拥有main方法,在该方法中,首先构建泰坦和宙斯对象,使用do while循环,让泰坦和宙斯相互攻击,每次攻击完毕后,判断泰坦和宙斯相应的HP,如果某一方HP小于等于0,则停止循环,并输出结果,格式为“泰坦/宙斯HP**,已经失败,胜利者是宙斯/泰坦!”

 

JAVA代码:

import java.util.*;
import java.io.*;
public class ClashofTitans {

public static void main(String[] args) {
//Scanner in=new Scanner(System.in);
Titan t=new Titan();
Zues z=new Zues();
boolean flag=true;
while(true){
if(flag)
{
t.attack(z);
}
else
{
z.attack(t);
}
flag=!flag;
if(t.Hp<=0)
{
System.out.println("泰坦的HP为0,已经失败,胜利者是宙斯!");
break;
}
if(z.Hp<=0)
{
System.out.println("宙斯的HP为0,已经失败,胜利者是泰坦!");
break;
}
}
}

}

class Titan {
public int Hp;
public int getHp() {
return Hp;
}
public void setHp(int hp) {
Hp = hp;
}
Titan(){
Hp=700;
}
Titan(int hp){
Hp=hp;
}
void attack(Zues z){
Random r=new Random();
int temp=r.nextInt(91)+10;
z.Hp-=temp;
if(z.Hp<0)
z.Hp=0;
System.out.println("泰坦攻击宙斯,产生"+temp+"点伤害,宙斯当前HP为"+z.Hp);
}
}

class Zues {
public int Hp;
public int getHp() {
return Hp;
}
public void setHp(int hp) {
Hp = hp;
}
Zues(){
Hp=1000;
}
Zues(int hp){
Hp=hp;
}
void attack(Titan t){
Random r=new Random();
int temp=r.nextInt(71);
t.Hp-=temp;
if(t.Hp<0)
t.Hp=0;
System.out.println("宙斯攻击泰坦,产生"+temp+"点伤害,泰坦当前HP为"+t.Hp);
}
}

转载于:https://www.cnblogs.com/Numblzw/p/10753948.html

发布了0 篇原创文章 · 获赞 6 · 访问量 5万+
展开阅读全文
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览