教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教学研究 >

实验五 方法的重载和构造方法

来源:网络收集 时间:2026-09-12
导读: 实验五 方 法的重载和静态成员 【实验目的】 1.巩固掌握构造方法的作用和定义; 2.掌握方法重载的意义和实现方式; 3.掌握静态成员的使用方法。 【实验准备】 复习配套教材相关章节的内容; 【实验内容】 项目一: 1. 定义一个游戏中Hero 英雄的类,在该类中

实验五 方 法的重载和静态成员

【实验目的】

1.巩固掌握构造方法的作用和定义;

2.掌握方法重载的意义和实现方式;

3.掌握静态成员的使用方法。

【实验准备】

复习配套教材相关章节的内容;

【实验内容】

项目一:

1. 定义一个游戏中Hero 英雄的类,在该类中定义英雄的名字, 生命值和等级

3 个属性,定义一个无参构造方法完成对名字、生命值和等级的初始化,分别赋初值为“无名英雄”、100和1。同时实现名字和英雄信息的输出。 public class Hero {

String name;

int healthPower;

int grade;

public Hero() {

http://www.77cn.com.cn ="无名英雄";

this.healthPower = 100;

this.grade=1;

}

void showInfo() {

System.out.println("——英雄信息——");

System.out.println("名字:" + http://www.77cn.com.cn);

System.out.println("生命值:" + this.healthPower);

System.out.println("类型:" + this.grade);

}

}

2. 在上一步的基础上,为英雄再定义拥有一个参数的构造方法,第一个参数传

入英雄的名字,第二个参数传入一个英雄类型的值,如果为1,则为普通英雄,生命值为100;如果该值为2,则为高级英雄,生命值初始化为200;如果该值为3,则为超级英雄,生命值初始化为300。

public Hero(String name, int grade) {

http://www.77cn.com.cn = name;

if (grade == 3) {

this.healthPower = 300;

this.grade = 3;

} else if (grade == 2) {

this.healthPower = 200;

this.grade = 2;

} else {

this.healthPower = 100;

this.grade = 1;

}

}

3. 为英雄添加一个基本战斗的方法,该方法拥有一个英雄类类型的参数,当传

入另一个英雄时,能降低对方10点血。 再增加一个绝招战斗的重载方法,加入一个绝招类型参数,通过输入不同绝招参数,降低对方不同的血量(这里简化为:1,多杀伤3点血,2,多杀伤6点血,3,多杀伤10点血)。

void fight(Hero opponent) {

opponent.healthPower -= 10;

}

void fight(Hero opponent, int skill) {

opponent.healthPower -= 10;

if (skill == 3) {

opponent.healthPower -= 10;

} else if (skill == 2) {

opponent.healthPower -= 6;

} else if (skill == 1) {

opponent.healthPower -= 3;

}

}

4. 在主类的主方法中编写代码,测试。

public static void main(String[] args) {

// TODO code application logic here

Hero superHero=new Hero("蜘蛛侠",3);

Hero opponent=new Hero();//对手

opponent.showInfo();

superHero.fight(opponent);

opponent.showInfo();

superHero.fight(opponent,2);

opponent.showInfo();

}

项目二:

设计一个BankAccount类,实现银行某账号的资金往来账目管理,包括建账号、存入、取出等。BankAccount类包括,账号(BankAccountId)、开户日期Date(日期), Rest(余额)。有一个构造方法和三个实例方法Bankin()(处理存入账),Bankout()(处理取出账)和一个负责生成账号的自动增长的方法(构造方法中调用),另有一个静态方法实现输出,以供存取帐时调用。

static void prt(String s){

System.out.println(s);

}

【总结与体会】

请思考3分钟以上。

注意通过第一个项目体会,掌握方法的重载;第二个项目注意理解静态属性和方法。

课后作业:

1、 编写一个类Book,代表教材:

具有属性:名称(title)、页数(pageNum)、种类(type)

具有方法:detail,用来在控制台输出每本教材的名称、页数、种类

具有两个带参构造方法:第一个构造方法中,设置教材种类为“计算机”(固

定),其余属性的值由参数给定;第二个构造方法中,所有属性的值都由参数

给定。

2、编写一个程序,已有若干学生数据,包括学号、姓名、成绩,要求输出这些学生数据并计算平均分。

思路:

设计一个学生类Stud,除了包括no(学号)、name(姓名)、和deg(成绩)数据成员外。有两个静态变量sum和num,分别存放总分和人数,有一个构造方法、一个普通实例方法disp()和一个静态方法avg()(用于输出当前人数和平均分)。

…… 此处隐藏:387字,全部文档内容请下载后查看。喜欢就下载吧 ……
实验五 方法的重载和构造方法.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1581174.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)