有一些共同的状态,好比名字,hp,护甲,移动速度等等,这样咱们就能够设计一种东西,叫作类,表明英雄这样一种事物java
- 类:英雄(Hero)
- 状态:名字, 血量,护甲,移动速度
这个类没有主方法,不要试图运行它。 并非全部的类都是有主方法的。spa
public class Hero { String name; //姓名 float hp; //血量 float armor; //护甲 int moveSpeed; //移动速度 }
类就像一个模板,根据这样一个模板,能够建立一个个的具体的英雄,一个个具体的英雄,就叫一个个的对象
new Hero()
就是java中建立一个英雄对象的意思设计
public class Hero { String name; //姓名 float hp; //血量 float armor; //护甲 int moveSpeed; //移动速度 public static void main(String[] args) { Hero garen = new Hero(); garen.name = "盖伦"; garen.hp = 616.28f; garen.armor = 27.536f; garen.moveSpeed = 350; Hero teemo = new Hero(); teemo.name = "提莫"; teemo.hp = 383f; teemo.armor = 14f; teemo.moveSpeed = 330; } }
属性的类型能够是基本类型,好比Int整数,float 浮点数,也能够是类类型,好比String字符串code
- 属性名称通常来讲,都是小写
好比name- 若是有多个单词组成,后面的单词的第一个字母大写
好比moveSpeed- 属性也是变量,因此须要知足变量的命名规则
float getArmor(){ return armor; }
void keng(){ System.out.println("坑队友!"); }
- 这个方法是用来获取一个英雄有多少护甲的,返回类型是float
- 有的方法是有返回类型的
- 有的方法不须要返回值,这个时候就把返回类型设置为void,表示该方法不返回任何值,好比方法 "坑队友"
英雄在一些特定状况下,能够增长移动速度,这样咱们就经过
addSpeed
这个方法增长移动速度对象
- int speed 叫作方法的参数
void addSpeed(int speed){ //在原来的基础上增长移动速度 moveSpeed = moveSpeed + speed; }
给盖伦增长100的移动速度blog
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; } public static void main(String[] args) { Hero garen = new Hero(); garen.name = "盖伦"; garen.moveSpeed = 350; garen.addSpeed(100); } }
- 方法是一个类的动做行为,因此通常都是以动词开头的,好比
keng
- 若是有多个单词,后面的每一个单词的第一个字母使用大写,好比
addSpeed