JAVA作业——实现英雄技能类

简介: JAVA作业——实现英雄技能类

Hero 抽象类的实现

1. package neuq.cs.java;
2. 
3. abstract public class Hero {
4. public void show(){
5.         System.out.println("  大学 计算机类 班 学号 姓名 同学出品");
6.     }
7. abstract public void E();
8. abstract public void Q();
9. abstract public void W();
10. }

孙悟空 英雄技能类的实现

1. package neuq.cs.java;
2. 
3. final public class 孙悟空 extends Hero{
4. @Override
5. public void show() {
6. super.show();
7.         System.out.println("  大学 计算机类 班 学号 姓名 同学出品");
8.         System.out.println("扣1送地狱火QAQ");
9.         System.out.println();
10.     }
11. @Override
12. public void E() {
13.         System.out.println("孙悟空使用技能“护身咒法”");
14.         System.out.println("孙悟空念起护身咒,护身咒可为孙悟空抵挡一次敌方技能,护身咒最多持续1.5秒;若成功抵挡,孙悟空将获得0.2秒的无敌效果以及抵免500/600/700/800/900/1000(+150%物理加成)点伤害的护盾,持续4秒。开启技能时自身增加40%移动速度,持续1秒");
15.         System.out.println();
16.     }
17. 
18. @Override
19. public void Q() {
20.         System.out.println("孙悟空使用技能”斗战冲锋“");
21.         System.out.println("孙悟空向指定方向冲锋,若路径上触碰目标会借力腾空跳跃,若触碰到非友军单位将增加1 秒90%衰减的移动速度,对野怪可造成240(+20/Lv)(0.2Ad)真实伤害。释放普通攻击或技能可中断跳跃。 降妖除魔:位移期间触碰到当前生命低于15%的野怪将直接斩杀(主宰、暴君除外)。");
22.         System.out.println();
23.     }
24. 
25. @Override
26. public void W() {
27.         System.out.println("孙悟空使用技能”如意金箍“");
28.         System.out.println("孙悟空将变大的金箍棒直插入地,对范围内敌人造成150/190/230(+50%物理加成)点物理伤害并将其晕眩1秒。同时范围内敌人获得3层印记;孙悟空的普通攻击命中带有印记的敌人将消耗1层印记并额外造成270/405/540点物理伤害。");
29.         System.out.println();
30.     }
31. }

test 测试类的实现

1. package neuq.cs.java;
2. import neuq.cs.java.Hero;
3. import java.util.Scanner;
4. import java.lang.Class;
5. 
6. public class test {
7. 
8. public static void main(String[] args) throws Exception{
9. while(true){
10.             System.out.println("请选择你的英雄");
11.             Scanner input=new Scanner(System.in);
12.             String hero_name=input.nextLine();
13.             Class c= Class.forName("neuq.cs.java."+hero_name);
14.             neuq.cs.java.Hero h=(neuq.cs.java.Hero) c.newInstance();
15.             h.show();
16.             h.E();
17.             h.Q();
18.             h.W();
19.         }
20.     }
21. }

演示效果

相关文章
|
7天前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
51 1
|
7天前
|
Java Go 开发工具
【Java】(8)正则表达式的使用与常用类分享
正则表达式定义了字符串的模式。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。
89 1
|
7天前
|
存储 Java 程序员
【Java】(6)全方面带你了解Java里的日期与时间内容,介绍 Calendar、GregorianCalendar、Date类
java.util 包提供了 Date 类来封装当前的日期和时间。Date 类提供两个构造函数来实例化 Date 对象。第一个构造函数使用当前日期和时间来初始化对象。Date( )第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。
63 1
|
7天前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
42 1
|
12天前
|
编解码 Java 开发者
Java String类的关键方法总结
以上总结了Java `String` 类最常见和重要功能性方法。每种操作都对应着日常编程任务,并且理解每种操作如何影响及处理 `Strings` 对于任何使用 Java 的开发者来说都至关重要。
153 5
|
20天前
|
Java
Java基础学习day08-作业
本作业涵盖Java中Lambda表达式的应用,包括Runnable与Comparator接口的简化实现、自定义函数式接口NumberProcessor进行加减乘及最大值操作,以及通过IntProcessor处理整数数组,实现遍历、平方和奇偶判断等功能,强化函数式编程实践。
44 5
|
21天前
|
Java
Java基础学习day07-作业
本作业包含六个Java编程案例:1)动物类继承与多态;2)加油卡支付系统;3)员工管理类设计;4)学生信息统计接口;5)USB设备控制;6)家电智能控制。综合运用抽象类、接口、继承、多态等面向对象技术,强化Java基础编程能力。
136 3
|
21天前
|
Java
Java基础学习day06-作业
本内容为Java基础学习作业,涵盖两个案例:一是通过Card类及其子类GoldenCard、SilverCard实现加油卡系统,体现封装与继承;二是通过Shape类及子类Circle、Rectangle演示多态与方法重写,强化面向对象编程理解。
47 1
|
25天前
|
安全 Java 数据建模
Java记录类:简化数据载体的新选择
Java记录类:简化数据载体的新选择
173 101
|
29天前
|
数据采集 存储 弹性计算
高并发Java爬虫的瓶颈分析与动态线程优化方案
高并发Java爬虫的瓶颈分析与动态线程优化方案

热门文章

最新文章