本实操对面向对象以及构造方法进行理解掌握,而不是进行大难度的训练,如果想要进行更复杂的操作也可以结合各种循环、判断来进行更好的理解
题目:
英雄联盟中有盖伦、伊芙琳两个英雄,魔沼蛙一个野怪
盖伦属性:名字,称号,血量,技能qwer
行为:分别释放qwer技能,让野怪掉血
伊芙琳属性:名字,称号,血量,蓝量,技能qwer
行为:分别释放qwer技能,让野怪掉血
魔沼蛙属性:名字,称号,血量
行为:攻击,让英雄掉血
现在进行这三个对现象的建立,并且进行三个对象之间的动作实操,
输出三者之间进行的动作,盖伦的血量,伊芙琳的血量、蓝量,魔沼蛙的血量
代码助理解
LOL.java
package main;
public class LOL {
public static void main(String[] args) {
Hero Galen = new Hero("盖伦","德玛西亚之力",620,"致命打击","勇气","审判","德玛西亚正义");
Hero Evelynn = new Hero("伊芙琳","痛苦之拥",572,315,"憎恨之刺","欲望红尘",
"鞭笞&强化鞭笞","最终抚慰");
Jungle frog = new Jungle("魔沼蛙","蛤蟆",1200);
Galen.skill_e(frog);
frog.fight(Galen);
Evelynn.skill_e(frog);
frog.fight(Evelynn);
System.out.println("盖伦血量:"+Galen.Blood);
System.out.println("伊芙琳血量:"+Evelynn.Blood);
System.out.println("伊芙琳蓝量:"+Evelynn.Magic);
System.out.println("魔爪哇血量:"+frog.Blood);
}
}
Hero.java
package main;
public class Hero {
String name;
String title;
int Blood;
int Magic;
String q;
String w;
String e;
String r;
public Hero(String name,String title,int blood,String q,String w,String e,String r){
this.name=name;
this.title = title;
this.Blood = blood;
this.q = q;
this.w = w;
this.e = e;
this.r = r;
}
public Hero(String name,String title,int blood,int magic,String q,String w,String e,String r){
this(name,title,blood,q,w,e,r);
this.Magic = magic;
}
public void skill_q(Jungle jungle){
System.out.println(this.name+"释放技能1:"+this.q);
this.Magic=this.Magic-10;
jungle.Blood = jungle.Blood-50;
}
public void skill_w(Jungle jungle){
System.out.println(this.name+"释放技能2:"+this.w);
this.Magic=this.Magic-20;
jungle.Blood = jungle.Blood-50;
}
public void skill_e(Jungle jungle){
System.out.println(this.name+"释放技能3:"+this.e);
this.Magic=this.Magic-30;
jungle.Blood = jungle.Blood-50;
}
public void skill_r(Jungle jungle){
this.Magic=this.Magic-40;
System.out.println(this.name+"释放技能4:"+this.r);
jungle.Blood = jungle.Blood-50;
}
}
jungle.java
package main;
public class Jungle {
String name;
String title;
int Blood;
public Jungle(String name,String title,int blood){
this.name=name;
this.title=title;
this.Blood = blood;
}
public void fight(Hero hero){
System.out.println("魔爪哇攻击");
hero.Blood = hero.Blood-20;
}
}