按要求实现下列问题:
1)封装一个西游记人物类Person:包含私有属性:姓名(name)、身高(height)、武器(weapon)、种族(race),并提供访问器(get方法)和修改器(set方法)
2)在测试类中实例化三个对象:tangseng(唐僧)、sunwukong(孙悟空)、baigujing(白骨精),分别设置他们的种族为:人族、仙族、妖族
3)在打印对象时(toString()),按照例如:“姓名:孙悟空;种族:仙族”的格式在控制台输出信息。
4)提供一个技能方法void skill(),这个方法根据当前对象name属性判断技能,如果是孙悟空,就打印“七十二变”,如果是唐僧,就打印“紧箍咒”,如果是白骨精,就打印“九阴白骨爪”,在测试类中调用这个方法。
5)重写equals方法进行判断,如果种族属性是人族或者仙族,则返回true,如果是妖族,则返回false,在测试类中对孙悟空和唐僧进行比较,打印结果,对唐僧和白骨精进行比较,并打印结果。
//首先创建一个Person类 其中包含私有属性(private):姓名(name)、身高(height)、武器(weapon)、种族(race)。
public class Person {private String name;private double height;private String weapon;private String race;//Alt+Insert 选中Select None创建Person类的无参构造方法public Person() {}//Alt+Insert 全部选中(Alt+A)点击OK,构造方法直接给成员变量赋值public Person(String name, double height, String weapon, String race) {this.name = name;this.height = height;this.weapon = weapon;this.race = race;}//Ctrl+o 方法重写 选中Object下的toString方法,进行重写@Overridepublic String toString() {return "姓名:"+name+"\t种族:"+race;}//创建skill方法。name.equals("孙悟空") ==>  利用equals判断name的属性值是否跟"孙悟空"相等,如果相等则输出"技能:七十二变",以下同理public void skill() {if (name.equals("孙悟空")) {System.out.println("技能:七十二变");}else if (name.equals("唐僧")) {System.out.println("技能:紧箍咒");}else if (name.equals("白骨精")) {System.out.println("技能:九阴白骨爪");}else {System.out.println("没有这个人物");}}//重写equals方法 obj默认为Object类 将obj强转为P@Overridepublic boolean equals(Object obj) {Person person = (Person) obj;if ("妖族".equals(this.race) || "妖族".equals(person.race)) {return false;}return true;}//Alt+Insert 选择get and set方法 zpublic String getName() {return name;}public void setName(String name) {this.name = name;}public double getHeight() {return height;}public void setHeight(double height) {this.height = height;}public String getWeapon() {return weapon;}public void setWeapon(String weapon) {this.weapon = weapon;}public String getRace() {return race;}public void setRace(String race) {this.race = race;}
}
public static void main(String[] args) {//实例化对象Person tangSeng = new Person("唐僧", 178, "权杖", "人族");Person sunWuKong = new Person("孙悟空", 185, "金箍棒", "人族");//调用toString方法输出孙悟空姓名,种族System.out.println(sunWuKong.toString());//调用skill方法输出孙悟空技能sunWuKong.skill();Person baiGuJing = new Person("白骨精", 177, "骨头", "妖族");//调用equals方法进行判断,如果种族属性是人族或者仙族,则返回true,如果是妖族,则返回falseSystem.out.println(tangSeng.getRace().equals(sunWuKong.getRace()));System.out.println(tangSeng.getRace().equals(baiGuJing.getRace()));}

封装一个西游记人物类Person相关推荐

  1. Java初级应用——编写西游记人物类,属性包括,身高,名字,武器。用一个测试类测试。

    ( 1)编写西游记人物类(XiYouJiRenWu) 其中属性有:身高(height),名字(name),武器(weapon) 方法有:显示名字(printName),显示武器(printWeapon ...

  2. java实训西游记人物实现_学习练习 java编写西游记人物类

    package com.hanqi; public class XiYouJiRenWu { double height; String weapon; String name; void prine ...

  3. JAVA|编写西游记人物类

    西游记人物类 按要求编写Java应用程序: (1)编写西游记人物类(XiYouJiRenWu) 其中属性有:身高(height),名字(name),武器(weapon) 方法有:显示名字(printN ...

  4. 编写西游记人物类(XiYouJiRenWu)

    package java1;public class XiYouJiRenWu {double height;String name;String weapon;void printName(){Sy ...

  5. 0516编写西游记人物类

    package com.text_1;public class XiYouJiRenWu {//输入游戏名字String name;//身高double height;//武器String weapo ...

  6. 一个IT人士的个人经历,给迷失方向的朋友

    文章来源于网络. 这些日子我一直在写一个实时操作系统内核,已有小成了,等写完我会全部公开,希望能够为国内IT的发展尽自己一份微薄的力量.最近看到很多学生朋友和我当年一样没有方向 ,所以把我的经历写出来 ...

  7. 从零开始学_JavaScript_系列(21)——dojo(8)(手把手教你封装一个widget)

    (73)封装一个widget 醒目:必须在web环境下使用,无论是python的web.py或者是通过http访问网站环境,都可以,但纯本地是不可行的. 首先,什么是widget? 简单来说,就是一个 ...

  8. 学会用taro封装一个组件

    我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注前端小歌谣学习前端知识 前言 大家好 我是歌谣 今天要说得是用taro封装一个组件 核心是学会弹性布局 直接上代码 组件部分 子组件 import ...

  9. 手把手教你封装一个自己的数据库框架~

    本教程将给大家深度剖析数据库框架底层实现的原理,然后采用泛型.反射.注解机制来教大家做一个自己的数据库框架. 前面学习了很多教程,我们转换了一下风格,开始从一个点切入,做更加深入的提升,这也是符合人的 ...

最新文章

  1. 使用crontab自动化调度jupyter notebook定时运行
  2. 2018年黑龙江各口岸进口俄大豆80.3万吨 同比增长60.1%
  3. 推荐10个很棒的 CSS3 开发工具
  4. 树状数组c语言模板,【树状数组】Cows (POJ2481) PASCAL 解题报告
  5. numpy的基本使用3
  6. SQL Server 取日期时间部分
  7. 多路由器环境配置的一些小技巧(达内)
  8. stagefright框架(四)-Video Buffer传输流程
  9. EF context.SaveChanges()特点
  10. 互联网日报 | 北斗三号全球卫星导航系统正式开通;拼多多上线首届“真香节”;海尔电器私有化草案出炉...
  11. 南京理工大学计算机专业考研,2020南京理工大学计算机考研初试科目、参考书目、复试详情汇总...
  12. ANSI Common Lisp 中文翻譯版 — ANSI Common Lisp 中文版
  13. Python3的os.popen()与subprocess使用(关于数据处理)
  14. postman下载excel出现乱码
  15. python实现搜索功能_python实现百度识图搜索功能
  16. lua学习03:tolua的编译和使用:C/C++调用lua、lua调用C++、lua调用tolua、常用tolua和lua的API介绍
  17. Excel绘制斜线表头
  18. 智协云店通+BitCOO扶持TEAx加入4WiN.io全球互贸链 | 翼次元空间+Fund++
  19. 离散-关系矩阵乘法运算
  20. 嵌入式硬件从接杜邦线起-杜邦头接线实操①

热门文章

  1. div图片背景虚化不影响图片上的文字_css 设置背景图片模糊,内容不模糊
  2. Nikkor AS-F DX 18-200mm 镜头的国外评测译文(还没译完)
  3. error TS2322: Type ‘WritableComputedRef<string>‘ is not assignable to type ‘string‘ 解决方法
  4. flask(十四)----模版渲染之继承
  5. CodeCombat-是个陷阱
  6. 顺序查找法和二分查找法
  7. Linux驱动 | MPU6050驱动(I2C)
  8. 解决高通 Android 12/13 ota升级失败问题
  9. matlab2016b自定义极坐标区 - matlab给极坐标图加度数符号
  10. C#学习记录——使用Convert命令进行显示转换