#Java基础学习总结----类和对象

初步接触Java之后,发现Java与C++一个很明显的区别就是C++分面向过程和面向对象两个部分,而Java程序的运行主要基于类和对象的建立。

而对于类和对象,我们可以通过下面的方式认识:

1、现实生活中类和对象
2、Java中的类
3、Java中的对象
4、场景实操

一、现实生活中类和对象

顾名思义,
一个具体的实体、事物就是一个对象,this 杯子,that 书本,都是一个个对象,而不同的对象又对应不同的特征和功能,我们分别用不同的特征和功能去描述和区分它们。
而类,就是具有相同特征(属性)和功能(方法)的对象。

如图汽车设计图(所有的这种汽车)看作一个类,第一第二第三辆汽车就是这个类里的对象:
如图汽车设计图(所有的这种汽车)看作一个类,第一第二第三辆汽车就是这个类里的对象

二、Java中的类

类的创建:	关键字: class
	格式: public class 类名{   }
类的属性定义:
	格式: public 属性类型  属性名;
类的方法定义:
	格式: public 方法返回值类型  方法名(参数类型 参数名,……){
				方法体,方法需要执行的内容	
				}

注意
1、方法需要使用自己的属性,直接写属性名,不需要加“参数名.”。
2、参数为方法需要使用的外部条件,调用时需要加“参数名.”。
3、这里的public是一种传参方式,其他的还有private、protected涉及到属性方法的调用范围权限,在后续继承的学习中体现得更明显。
4、主方法可以写在任何一个类中,但一般会另新建一个主方法类。
5、类名一般用英文较多,以避免出现乱码及更广泛的使用。

三、Java中的对象

定义了类之后就可以定义类的对象了。
对象的创建:	关键字:new	
格式:	类名 对象名 = new 类名();
对象的属性使用:	
格式:	对象名.属性名
对象的方法使用:	
格式: 	对象名.方法名(参数值,……); 		
通过一个个具体的对象实现类的功能。上述注意事项在这里仍然适用。

四、场景实操

  • 模拟一个互相攻击的场景
    采用回合制,每次攻击让对方的血量减少攻击方的攻击值,重复,直到某一方的血量小于等于0。输出:战斗的过程、战斗的结果。

先定义一个AMERICAN类:

public class AMERICAN {
 
 //属性
 public String name;
 public double Blood;
 
 //方法
 public double fire(IRON iron){
  
  //攻击过程
  iron.Blood-=(int)(Math.random()*8+1);
  
  System.out.println(name+"攻击"+iron.name+","+iron.name+" is "+iron.Blood);
  
  return iron.Blood;
 }
 
}

再定义一个IRON类:

public class IRON {
 
 //属性
 public String name;
 public double Blood;
 
 //方法
 public double fire(AMERICAN American){
  //这里类的参数名也可设置为其他,因为这里并不真正调用是个虚值,比如可以(AMERICAN A)
  //攻击过程
  American.Blood-=(int)(Math.random()*8+1);
  
  System.out.println(name+"攻击"+American.name+","+American.name+" is "+American.Blood);
  
  return American.Blood;
 }
}

最后在主函数中定义两个类的对象,再定义比赛结束的条件运行即可。
上面有一个随机数的使用,意为在1-9之间随机取一个整数,

   if(Math.random() > 0.5){
   
    //American攻击
    American.fire(iron);
   }
   else{
    
    //iron攻击
    iron.fire(American);
   }

还可以通过随机数使比赛随机进行攻击。
关于随机数的具体方法会在之后的学习过程中总结出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值