「Java学习打卡」35、(⾯向对象)简单游戏类设计
题⽬
1. 定义⼀个游戏中Hero 英雄的类,在该类中定义英雄的名字, ⽣命值和等级3 个属性,定义⼀个构造函数完成对⽣命值和等级的初始
化,分别赋初值为100,1。同时实现名字的输⼊和英雄信息的输出。
public Hero(){
this.Hhealth =100;
this.Hgrade =1;
Scanner scan =new Scanner(System.in);
System.out.print("输⼊默认英雄的名字:");
this.name = Line();
System.out.println("默认英雄创建成功\n");
printMessage();
}
2. 在上⼀题的基础上,为英雄再定义拥有⼀个参数的构造⽅法,传⼊⼀个英雄类型的值,如果为1,则为普通英雄,⽣命值为100,如果
该值为2,则为⾼级英雄,⽣命值初始化为200。
public Hero(int Htype){
Scanner scan =new Scanner(System.in);
System.out.print("输⼊英雄的名字:");
this.name = Line();
if(Htype ==1){
this.Hhealth =100;
this.Hgrade =1;
System.out.println("普通英雄创建成功\n");
}
if(Htype ==2){
this.Hhealth =200;
this.Hgrade =1;
简单的java游戏代码System.out.println("⾼级英雄创建成功\n");
}
printMessage();
}
3. 在上两英雄类型的基础上,为英雄添加⼀个基本战⽃的⽅法, 该⽅法拥有⼀个英雄类型的参数,当传⼊另⼀个英雄时,能降低对⽅
100 点⾎。 再增加⼀个绝招的重载⽅法,加⼊⼀个战⽃类型参数,通过输⼊不同绝招参数,降低对⽅不同的⾎量。
public void HFight(){
this.Hhealth -=100;
System.out.println("受到攻击 "+this.name +"的⽣命值 -100\n");
}
public void HFight(int fpara){
this.Hhealth -= fpara;
System.out.println("受到攻击 "+this.name +"的⽣命值 -"+ fpara +"\n");
}
验证程序代码如下:
import java.util.Scanner;
class Hero {
private String name;
public int Hhealth;
private int Hgrade;
public Hero(){
this.Hhealth =100;
this.Hgrade =1;
this.Hgrade =1;
Scanner scan =new Scanner(System.in);
System.out.print("输⼊默认英雄的名字:");
this.name = Line();
System.out.println("默认英雄创建成功\n");
printMessage();
}
public Hero(int Htype){
Scanner scan =new Scanner(System.in);
System.out.print("输⼊英雄的名字:");
this.name = Line();
if(Htype ==1){
this.Hhealth =100;
this.Hgrade =1;
System.out.println("普通英雄创建成功\n");
}
if(Htype ==2){
this.Hhealth =200;
this.Hgrade =1;
System.out.println("⾼级英雄创建成功\n");
}
printMessage();
}
public void printMessage(){
System.out.println("当前英雄信息:");
System.out.print("姓名:"+this.name);
System.out.print(" ⽣命值:"+ Hhealth);
System.out.print(" 等级:"+ Hgrade +"\n\n");
}
public void HFight(){
this.Hhealth -=100;
System.out.println("受到攻击 "+this.name +"的⽣命值 -100\n");
}
public void HFight(int fpara){
this.Hhealth -= fpara;
System.out.println("受到攻击 "+this.name +"的⽣命值 -"+ fpara +"\n"); }
}
public class Test {
public static void main(String args[]){
Hero h1 =new Hero();
Hero h2 =new Hero(1);
Hero h3 =new Hero(2);
h3.printMessage();
;
h3.HFight();
h3.printMessage();
;
h3.HFight(30);
h3.printMessage();
;
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。