类和对象的总结
6月7日,熊哥给我们上了类和对象。
可能是刚入门基础和熊哥的原因~ 真心感觉Java比c++好理解多了。还有,注释是一个好东西。
今天才对类真正有点初步的认识吧~ 知道一个类里面可以有很多个对象,每个类里面有的特征和行为。
类的基本结构:
public class 类名 {
//属性的格式
private 数据类型 属性名;
//行为的格式
public 返回值数据类型 方法名(数据类型 参数名 ...);{
//方法体
}
}
不过还是感觉对分辨对象,还有对象的特征和行为有压力。估计慢慢做多了,情况会好些吧。
后面做的战斗练习,感觉跟教材上的代码大同小异吧。
熊哥让我们想清楚是人对战还是名字对战.
我一开始把2个战士都归到一个类里面去,后来想着想着,觉得不对劲~ 因为小时候拳王里面每个角色都有自己的绝招,所以要是都在同一个类里面应该不恰当吧,所以后来就把战士跟Boss分开了,各自一个类。
在写的过程中,发现后面战斗的方法那里很纠结。
//战斗的方法
public void fight(Boss Bo){
Bo.setBlood(Bo.getBlood()-1);
System.out.println(Bo.getName()+"被击中");
setBlood 和 getBlood 不懂怎么用~ 后来看看原来的代码,大概懂点了。
setBlood 没有返回值, getBlood 有返回值,返回一个整数,所以getBlood就在括号里面。
然后getBlood -1 然后 setBlood-1. 后来getBlood 就保存了setBlood-1 的数值,再循环。
代码示例:
//斗士类的定义
public class Fighter {
//战士名字的属性
private String name;
//战士血量的属性
private int blood=5;
//设置战士的名字
public void setName(String n){
name=n;
}
//获取战士名字
public String getName(){
return name;
}
//设置战士血量
public void setBlood(int m){
blood=m;
}
//得到战士血量
public int getBlood(){
return blood;
}
//战士战斗的方法
public void fight(Boss Bo){
Bo.setBlood(Bo.getBlood()-1);
System.out.println(Bo.getName()+"被击中");
}
}
//Boss的定义
public class Boss {
//Boss名字的属性
private String name;
//Boss血量的属性
private int blood=5;
//设置Boss的名字
public void setName(String n){
name=n;
}
//获取Boss名字
public String getName(){
return name;
}
//设置Boss血量
public void setBlood(int m){
blood=m;
}
//得到Boss血量
public int getBlood(){
return blood;
}
//Boss战斗的方法
public void fight(Fighter Fi){
Fi.setBlood(Fi.getBlood()-1);
System.out.println(Fi.getName()+"被击中");
//
}
}
//定义一个Manager类
public class Manager {
//定义一个入口主函数
public static void main(String [] args ){
//创建一个战士对象
Fighter Fi1 = new Fighter();
Fi1.setName("拉稀战士");
//再创建一个Boss对象
Boss Bo = new Boss();
Bo.setName("撒饭boss");
Fi1.fight(Bo);
for(int i=1;i<=5;i++){
Bo.fight(Fi1);
}
System.out.println();
//判断血量,决胜负
if((Fi1.getBlood())<=0)
{System.out.println((Bo.getName())+"胜利了"); }
else if((Bo.getBlood())<=0)
{System.out.println((Fi1.getName())+"胜利了"); }
}
}
6月7日,熊哥给我们上了类和对象。
可能是刚入门基础和熊哥的原因~ 真心感觉Java比c++好理解多了。还有,注释是一个好东西。
今天才对类真正有点初步的认识吧~ 知道一个类里面可以有很多个对象,每个类里面有的特征和行为。
类的基本结构:
public class 类名 {
//属性的格式
private 数据类型 属性名;
//行为的格式
public 返回值数据类型 方法名(数据类型 参数名 ...);{
//方法体
}
}
不过还是感觉对分辨对象,还有对象的特征和行为有压力。估计慢慢做多了,情况会好些吧。
后面做的战斗练习,感觉跟教材上的代码大同小异吧。
熊哥让我们想清楚是人对战还是名字对战.
我一开始把2个战士都归到一个类里面去,后来想着想着,觉得不对劲~ 因为小时候拳王里面每个角色都有自己的绝招,所以要是都在同一个类里面应该不恰当吧,所以后来就把战士跟Boss分开了,各自一个类。
在写的过程中,发现后面战斗的方法那里很纠结。
//战斗的方法
public void fight(Boss Bo){
Bo.setBlood(Bo.getBlood()-1);
System.out.println(Bo.getName()+"被击中");
setBlood 和 getBlood 不懂怎么用~ 后来看看原来的代码,大概懂点了。
setBlood 没有返回值, getBlood 有返回值,返回一个整数,所以getBlood就在括号里面。
然后getBlood -1 然后 setBlood-1. 后来getBlood 就保存了setBlood-1 的数值,再循环。
代码示例:
//斗士类的定义
public class Fighter {
//战士名字的属性
private String name;
//战士血量的属性
private int blood=5;
//设置战士的名字
public void setName(String n){
name=n;
}
//获取战士名字
public String getName(){
return name;
}
//设置战士血量
public void setBlood(int m){
blood=m;
}
//得到战士血量
public int getBlood(){
return blood;
}
//战士战斗的方法
public void fight(Boss Bo){
Bo.setBlood(Bo.getBlood()-1);
System.out.println(Bo.getName()+"被击中");
}
}
//Boss的定义
public class Boss {
//Boss名字的属性
private String name;
//Boss血量的属性
private int blood=5;
//设置Boss的名字
public void setName(String n){
name=n;
}
//获取Boss名字
public String getName(){
return name;
}
//设置Boss血量
public void setBlood(int m){
blood=m;
}
//得到Boss血量
public int getBlood(){
return blood;
}
//Boss战斗的方法
public void fight(Fighter Fi){
Fi.setBlood(Fi.getBlood()-1);
System.out.println(Fi.getName()+"被击中");
//
}
}
//定义一个Manager类
public class Manager {
//定义一个入口主函数
public static void main(String [] args ){
//创建一个战士对象
Fighter Fi1 = new Fighter();
Fi1.setName("拉稀战士");
//再创建一个Boss对象
Boss Bo = new Boss();
Bo.setName("撒饭boss");
Fi1.fight(Bo);
for(int i=1;i<=5;i++){
Bo.fight(Fi1);
}
System.out.println();
//判断血量,决胜负
if((Fi1.getBlood())<=0)
{System.out.println((Bo.getName())+"胜利了"); }
else if((Bo.getBlood())<=0)
{System.out.println((Fi1.getName())+"胜利了"); }
}
}