您的位置:首页 > 编程语言 > Java开发

Java中的类与对象

2016-07-13 19:50 260 查看
Java中的类与对象
程序是实体在计算机中的体现,而对于一个实体主要是从属性和方法上面来描述,例如一个人就是一个实体。每一个人都有自己的名字,性别,年龄等,这些就是一个人所具有的属性,同时人还有学习、吃饭、睡觉等,这些就是一个人所具有的方法。在现实生活中可找出很多事物作为实体,例如学生、教师、飞机、发动机等都是实体;在思维世界中许多的概念也可以作为一个实体,例如复数,矩阵,堆栈,队列等,它们也有自己的行为与方法。
在程序中用类来描述这些实体的抽象概念。类就是一群具有相同属性和方法的实体的抽象,比如说一个中学生和一个大学生都是实体,而学号,姓名,性别,年级等是他们所具有的属性,学习、吃饭、睡觉等是他们共同具有的方法。我们现在让这些相同的属性和方法抽象出来形成一个学生类,同样具有中学生和大学生的方法和属性,这不过学生更加的抽象,更加的含糊,而一个大学生和中学生则具体的对应了两个实体。
下面我们以“八神和猴子PK(回合制),每一次攻击,让对方的血量减少自己的攻击值,直到某一方血量为0,输出胜利方。”来讨论Java中的类与对象。
第一步:分析场景中的对象。显然八神和猴子就是两个实体对象。
第二步:分析对象的属性和方法。对于八神而言他的属性有自己的血量,攻击值,名字,方法就是攻击对手。同样的猴子同样也也具有自己的血量,攻击值,名字属性,方法是攻击对手。
第三步:分析对象之间的共同处。那就是都具有血量,攻击值,名字等属性,具有攻击对手的方法。
下面是创建一个角色类:
public class Character {
//血量属性
public int blood;
//设置攻击值
public int num;
//设置角色名字
public String name;

//双方进行决斗
public void Pk(Character a){
//当血量大于0角色双方进行决斗,血量减少对方的攻击值
if(blood > 0 ){
a.blood=a.blood-num;
//输出此时对方的状态以便观察
System.out.println(name+"攻击"+a.name+","+a.name+"血量还剩"+a.blood);
}
//如果对方血量小于0输出胜利的一方
if(a.blood <= 0){
System.out.println(name+"为胜出的一方");
}
}
}

下面就是主方法的实现:
public class Manager {

public static void main(String [] args){
//创建两个对象八神A和猴子A
Character bashen = new Character ();
Character houzi = new Character ();
//设置八神和猴子的属性
bashen.blood = 20;
houzi.blood = 20;
bashen.name = "八神";
houzi.name = "猴子";
bashen.num = 8;
houzi.num = 6;
//八神A和猴子A进行决斗。输出胜利的一方
while(bashenA.blood > 0 && houziA.blood > 0){
bashenA.Pk(houziA);
houziA.Pk(bashenA);
}
}
下面为输出的结果:
八神攻击猴子,猴子血量还剩12
猴子攻击八神,八神血量还剩14
八神攻击猴子,猴子血量还剩4
猴子攻击八神,八神血量还剩8
八神攻击猴子,猴子血量还剩-4
八神为胜出的一方
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: