王者荣耀用java_王者荣耀版Java教程第五期:Java类与对象(1)
1. 继承
在王者荣耀中,武器多种多样,如下图所示:
public classWeapons {
String name;intprice;
}
然后,在我们设计一个具体的武器时,就继承武器类,继承用extends关键字,继承的好处就是,会自动得到父类的非私有属性和方法。比较省事和直观。
比如,我们可以设计一个碎星锤,再添加一个攻击力的属性。
public classSuiXingChui extends Weapons {
intattackNum;
public intgetAttackNum() {returnattackNum;
}
public void setAttackNum(intattackNum) {this.attackNum =attackNum;
}
}
2. 方法重载
我们知道,英雄有的技能是可以进行大规模杀伤的,比如鲁班三技能,只要飘过敌方英雄的头顶,满足条件就可以对范围内的所有英雄造成伤害。
那么问题来了,对几名英雄造成伤害呢?
可能是一个,也可能是两个。
我们可以设计两个攻击的方法。
public voidattack(Hero hero){
System.out.println(this.name + "对" + hero.getName() + "进行了1次攻击!");
}
public voidattack(Hero hero1,Hero hero2){
System.out.println(this.name + "对" + hero1.getName() + "和" + hero2.getName() + "进行了1次攻击!");
}
像这种,参数类型或者个数不同的,就称为方法重载。
但是这样写起来有点累赘,我们可以用变长参数来简化代码:
public voidattack(Hero... heros){
for(Hero hero : heros){
System.out.println(this.name + "对" + hero.getName() + "进行了1次攻击!");
}
}
3. 构造方法
我们回忆一下,之前我们创建鲁班对象的时候,是不是先把英雄给new出来,然后再一个一个set属性的呢?
很明显,这样有点麻烦,像一些必要的属性,最好是在new的时候就给他初始化完毕。
我们可以用构造方法来完成这一任务。
publicHero(String name){this.name =name;
}
方法名和类名一样(包括大小写)
没有返回类型
实例化一个对象的时候,必然调用构造方法,在你new的瞬间,就会自动调用这个方法。
当你写了带参数的构造方法,就没有办法直接用无参的构造方法了,除非你再去手动地定义一下。
publicHero(){
}
调用情况:
Hero luban = new Hero("鲁班七号");
Hero llw= newHero();
llw.setName("兰陵王");
Hero blsy= newHero();
blsy.setName("百里守约");
luban.attack(llw,blsy);
王者荣耀用java_王者荣耀版Java教程第五期:Java类与对象(1)相关推荐
- java开发可重用代码包工具包_[Java教程]彻底搞懂Java开发工具包(JDK)安装及环境变量配置...
[Java教程]彻底搞懂Java开发工具包(JDK)安装及环境变量配置 0 2021-01-04 04:00:04 安装并配置JDK环境变量,不但要知道怎样做,也要知道为什么这样做,知其然知其所以然. ...
- java 作业 老师与教员信息 类与对象
java 作业 老师与教员信息 类与对象 需求 逻辑图 学生类 public class Student {int age; // 年龄String className; // 班级名称String ...
- java servlet类_[Java教程]与Servlet相关的类
[Java教程]与Servlet相关的类 0 2017-08-31 17:00:15 有4个有关的类,通过servlet可以获得其中的三个,然后通过ServletConfig间接获取ServletCo ...
- java编写流星_[Java教程]【原创】java 流星划过天空
[Java教程][原创]java 流星划过天空 0 2015-10-29 10:00:06 1 import java.awt.Color; 2 import java.awt.Graphics; 3 ...
- Java基础语法(七)——类和对象
文章目录 Java基础语法(七)--类和对象 一.类和对象的初步认识 二. 类和类的实例化 1.类的定义 2.实例化对象 3.如何使用类中的数据 三. 类的成员 1. 字段/属性/成员变量 (1)实例 ...
- java打字游戏和解析_java类与对象案例之打字游戏
类与对象案例-童年回忆之打字游戏 一.玩家类 二.等级类 三.游戏类 四.等级地图 五.测试类 这次要做的案例是一个打字游戏的案例,相信大家小时候都玩过金山打字通的警察抓小偷和飞机大战,这次的案例是类 ...
- java教程系列二:Java JDK,JRE和JVM分别是什么?
多情只有春庭月,犹为离人照落花. 概述 本章主要了解JDK,JRE和JVM之间的区别.JVM是如何工作的?什么是类加载器,解释器和JIT编译器.还有一些面试问题. Java程序执行过程 在深入了解Ja ...
- Java进阶(五)Java I/O模型从BIO到NIO和Reactor模式
本文介绍了Java中的四种I/O模型,同步阻塞,同步非阻塞,多路复用,异步阻塞.同时将NIO和BIO进行了对比,并详细分析了基于NIO的Reactor模式,包括经典单线程模型以及多线程模式和多Reac ...
- JAVA教程 第六讲 Java的线程和Java Applet(二)
6.3 Java Applet 前面的章节我们阐述了Application的应用,这一讲我们将介绍java的另一类应用java Applet,即java小应用程序. 在Java问世的头几年里,之所以如 ...
最新文章
- [vb+mo] visual baisc 6.0 基于mapobjects 2.4 开发的数字化校园电子地图
- REDIS的几个测试结果
- linux下安装libsvm_Linux下libsvm的安装及简单练习
- join left 大数据_Java并发编程笔记-JDK内置并行执行框架Fork/Join
- python学习之- 内置函数
- 自定义UITableViewCell需注意的问题
- 分布式与人工智能课程(part14)--深度学习
- Nginx记录客户端POST过来的具体信息
- 授人以鱼不如授人以渔,UCHome全面大解析培训【第二集】
- 空格在Html中的表示方法(nbsp含义)
- 大学生创新项目管理系统
- 如何合并apk和odex文件
- ftp中转服务器,bat实现的ftp中转
- 单片机|CC2530实验入门
- win10计算机休眠快捷键,键盘快捷键关闭或休眠Windows 10 | MOS86
- 测试linux服务器的网速慢,测试linux服务器的上传下载速度的方法
- Linux学习:四层负载均衡详解
- 量子计算最新进展:量子芯片将可利用现有硅工艺制造
- MapReduce之幺半群
- 跳马周游c++_汉诺塔,n皇后,跳马问题汇总
热门文章
- 使用Postman测试接口时记录token方便使用
- 论文阅读-TNNLS2021-Elastic Knowledge Distillation by Learning from Recollection
- 吴恩达——成本函数公式
- To butter up someone 拍马屁
- 未来计算机幻想作文,想象未来的机器人作文(精选5篇)
- 记: 对于SCPI指令以及相同类型指令解析器的指令压缩方式
- Python—time模块
- 【51nod】【堆】小明和他的朋友们
- 机器学习-推荐系统-itemCF算法
- QC协议+华为FCP+三星AFC快充取电5V9V12V15V20V芯片PDX06应用以及拆解正点原子的T65 USB电烙铁PD部分