Java知识系统回顾整理01基础02面向对象03方法
一、根据实例给出"方法"的定义
在LOL中,一个英雄可以做很多事情,比如超神,超鬼,坑队友
能做什么在类里面就叫做方法
比如队友残血正在逃跑,你过去把路给别人挡住了,导致他被杀掉。 这就是坑队友
每个英雄。。。。都可以坑
所以为Hero这个类,设计一个方法: keng

|
public class Hero { String name; //姓名 //方法:坑队友 void keng(){ System.out.println("坑队友!"); } } |
二、方法返回类型
有的方法是有返回类型的
比如方法:
|
float getArmor(){ return armor; } |
上面这个方法是用来获取一个英雄有多少护甲的,返回类型是float
有的方法不需要返回值,这个时候就把返回类型设置为void,表示该方法不返回任何值。比如方法 "坑队友"
|
void keng(){ System.out.println("坑队友!"); } |
|
public class Hero { String name; //姓名 //方法:坑队友 void keng(){ System.out.println("坑队友!"); } } |
三、方法的参数
英雄在一些特定情况下,可以增加移动速度
这样我们就通过addSpeed这个方法增加移动速度
|
void addSpeed(int speed){ //在原来的基础上增加移动速度 moveSpeed = moveSpeed + speed; } |
int speed 叫做方法的参数
给盖伦增加100的移动速度:
|
Hero garen = new Hero(); garen.name = "盖伦"; garen.moveSpeed = 350; garen.addSpeed(100); |
|
public class Hero { String name; //姓名 //坑队友 void keng(){ System.out.println("坑队友!"); } //获取护甲值 float getArmor(){ return armor; } //增加移动速度 void addSpeed(int speed){ //在原来的基础上增加移动速度 moveSpeed = moveSpeed + speed; } public static Hero garen = new Hero(); garen.name = "盖伦"; garen.moveSpeed = 350; garen.addSpeed(100); } } |
四、方法的命名
方法是一个类的动作行为,所以一般都是以动词开头的,比如 keng ...
如果有多个单词,后面的每个单词的第一个字母使用大写
比如 addSpeed
|
public class Hero { String name; //姓名 float hp; //血量 int moveSpeed; //移动速度 //坑队友 void keng(){ System.out.println("坑队友!"); } //获取护甲值 float getArmor(){ return armor; } //增加移动速度 void addSpeed(int speed){ //在原来的基础上增加移动速度 moveSpeed = moveSpeed + speed; } } |
五、练习及答案
题目:
为英雄类Hero设计几个新的方法:
1. 超神 legendary(),无参数,无返回类型
2. 获取当前的血量 getHp(), 无参数,有float类型的返回值
3. 回血 recovery(float blood), 有参数 float类型参数 blood表示本次恢复的血量,无返回类型
官方答案:
|
public class Hero { String name; //姓名 float hp; //血量 float armor; //护甲 int moveSpeed; //移动速度 //坑队友 void keng(){ System.out.println("坑队友!"); } //获取护甲值 float getArmor(){ return armor; } //增加移动速度 void addSpeed(int speed){ //在原来的基础上增加移动速度 moveSpeed = moveSpeed + speed; } //超神 void legendary(){ System.out.println("超神了!"); } //获取当前的血量 float getHp(){ return hp; } //回血 void recovery(float blood){ hp = hp+blood; } public static Hero garen = new Hero(); garen.name= "盖伦"; garen.hp = 500; System.out.println(garen.name + " 当前的血量是 " +garen.hp); System.out.println("回血100"); garen.recovery(100); System.out.println("现在的血量是:" + garen.hp); } } |
个人整理答案:

Java知识系统回顾整理01基础02面向对象03方法的更多相关文章
- Java知识系统回顾整理01基础02面向对象01类和对象
一.面向对象实例--设计英雄这个类 LOL有很多英雄,比如盲僧,团战可以输,提莫必须死,盖伦,琴女 所有这些英雄,都有一些共同的状态 比如,他们都有名字,hp,护甲,移动速度等等 这样我们就可以设计一 ...
- Java知识系统回顾整理01基础02面向对象02属性
一.根据实例给出"属性"的定义 一个英雄有姓名,血量,护甲等等状态 这些状态就叫做一个类的属性 二.属性的类型 属性的类型可以是基本类型,比如int整数,float 浮点数 也可以 ...
- Java知识系统回顾整理01基础06数组03排序
一.选择法排序 选择法排序的思路: 把第一位和其他所有的进行比较,只要比第一位小的,就换到第一个位置来 比较完后,第一位就是最小的 然后再从第二位和剩余的其他所有进行比较,只要比第二位小,就换到第二个 ...
- Java知识系统回顾整理01基础04操作符03逻辑运算符
一.长路与 和 短路与 无论长路与还是短路与 两边的运算单元都是布尔值 都为真时,才为真 任意为假,就为假 区别 长路与 两侧,都会被运算 短路与 只要第一个是false,第二个就不进行运算了 pub ...
- Java知识系统回顾整理01基础01第一个程序02命令行格式编译和执行Java程序
一.先看运行效果 在控制台下运行第一个Java程序,可以看到输出了字符串 hello world 二.准备项目目录 通常都会在e: 创建一个project目录 在这个例子里,我们用的是e:/proje ...
- Java知识系统回顾整理01基础04操作符02关系操作符
一.关系操作符 关系操作符:比较两个变量之间的关系 > 大于 >= 大于或等于 < 小于 <= 小于或等于 == 是否相等 != 是否不等 public class Hell ...
- Java知识系统回顾整理01基础03变量02基本变量类型
一.变量类型分类 一个变量的类型,决定了该变量可以包含什么样的值. Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字. 这八种基本类型分别是: 整型 (4种) 字符型 (1种) ...
- Java知识系统回顾整理01基础05控制流程02 switch
一.switch switch 语句相当于 if else的另一种表达方式 switch可以使用byte,short,int,char,String,enum 注: 每个表达式结束,都应该有一个bre ...
- Java知识系统回顾整理01基础06数组02初始化数组
一.分配空间与赋值分步进行 分配空间与赋值分步进行 public class HelloWorld { public static void main(String[] args) { int[] a ...
随机推荐
- PHP - 附件下载
<?php $file_name = "textuse.zip";//下载文件名 $file_dir = "E:/www/xiazaiwenjian/"; ...
- Urule开源版系列4——Core包核心接口之规则解析过程
Urule运行规则文件,是如何进行的,通过一个请求doTest来探一下 com.bstek.urule.console.servlet.respackage.PackageServletHandler ...
- vim编辑器 与etc目录
第1章 目录结构 1.1 vim vim故障 vim 是vi的升级版本 vi类似于文本文档 vim类似于notepad++ 编辑 必须先安装vim命令 yum -y insta ...
- Java/后端学习路线
点赞再看,养成习惯,微信搜一搜[三太子敖丙]关注这个喜欢写情怀的程序员. 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试完整考点.资料以及我的系 ...
- Java HashMap源码
http://blog.csdn.net/qq_27093465/article/details/52207135 http://blog.csdn.net/qq_27093465/article/d ...
- 深入Spring Security-获取认证机制核心原理讲解
文/朱季谦 本文基于Springboot+Vue+Spring Security框架而写的原创笔记,demo代码参考<Spring Boot+Spring Cloud+Vue+Element项目 ...
- C# 获取当前月的月初和月末
/// <summary> /// 获取当前月的月末日期 /// </summary> /// <returns></returns> public s ...
- EasyPoi导出Excel
这几天一直在忙工作中的事情,在工作中有一个问题,可能是因为刚开始接触这个EasyPoi,对其也没有太多的理解,在项目中就使用了,有一个需求,是要导出项目中所有的表格,今天就对这个需求进行分析和实现吧; ...
- [Java数据结构]LinkedHashMap,TreeMap
HashMap不能记住插入时的顺序,但LinkedHashMap可以做到这一点. 例程: Map<Integer,String> empMap=new LinkedHashMap<I ...
- 初探nmap
nmap 也就是Network Mapper用来扫描电脑开发的端口 主要功能: 探测主机在线情况 扫描主机开发端口和对应的大概服务命令: nmap 127.0.0.1 查看该主机开放的端口和端.端口类 ...