二、类和对象

1、基本概念
(1)对象是靠类的模型塑造出来的。对象是已知的事物(实例变量),对象会执行动作(方法)
实例变量代表对象的状态(数据)
简单说,对象就是包括方法和实例变量

(2)类和对象的关系:我认为,类就像是一个基本框架,在这个框架中不断充实具体的内容就会形成形色各异不同的对象,对象能够调用类中的方法和给类的变量赋值
*(3)类的种类:

  • 普通类:要被操作于对象的类,也就是说是我认为的框架。它没有main(),再这其中构建所需要的实例变量,定义方法名及其方法语句
public class SimpleNormalClass {
	int size;//定义实例变量大小
	String breed;//定义实例变量种类
	String name;//定义实例变量姓名
	void bark(){
		System.out.println("Ruff!Ruff!");
	}//定义了一个方法bark()

}

  • 测试类:带有main(),对实例变量进行赋值,建立对象并调用方法
public class SimpleTestClass {
	public static void main(String[]args){
		SimpleNormalClass s=new SimpleNormalClass();//定义一个对象名为s,这个对象的建立必须与普通类的名字相同
		s.size=40;//为实例变量size赋值
		s.breed="拉布拉多";//为实例变量breed赋值
		s.name="钢镚";//为实例变量name赋值
		s.bark();//调用这个方法
		
			}

}

*main()的两种用途:用于测试类中;启动Java应用程序 *
任何变量只要加上public、static、final,基本上都会变成全局变量取用的常数
2、一个猜数字的经典谜题的理解

public class Guessgame {
	Playergame p1;
	Playergame p2;
	Playergame p3;
	public void startgame(){
		 p1=new Playergame();
	     p2=new Playergame();
		 p3=new Playergame();//定义了三个对象
		int guessp1=0;
		int guessp2=0;
		int guessp3 = 0;//定义了三个变量来保存是否猜中,如果不将初始化设为0会出现错误
		boolean p1isRight=false;
		boolean p2isRight=false;
		boolean p3isRight=false;//定义了三个布尔型变量保存猜测的数字
		
		int targetNumber=(int)(Math.random()*10);//定义了一个变量并将介于0-1之间乘10的任意一个数字赋予给该变量
		while(true){
			System.out.println("谜底是"+targetNumber);
		p1.guess();
		p2.guess();
		p3.guess();//三个实例调用guess方法,输出猜测的数据
		guessp1=p1.number;
		System.out.println("第一次猜测的数据是"+guessp1);
		guessp2=p2.number;
		System.out.println("第二次猜测的数据是"+guessp2);
		guessp2=p2.number;
		System.out.println("第三次猜测的数据是"+guessp3);
		if(guessp1==targetNumber){
			p1isRight=true;//如果第一次猜测的数据就等于设定的数据,那么p1就是正确的,true的时候应该进入while
		}
		if(guessp2==targetNumber){
			p2isRight=true;
		}
		if(guessp3==targetNumber){
			p3isRight=true;
		}
		if(p1isRight||p2isRight||p3isRight){
			System.out.println("已经猜对了");
			System.out.println("已经找到设定数字了吗?"+p1isRight);
			System.out.println("已经找到设定数字了吗?"+p2isRight);
			System.out.println("已经找到设定数字了吗?"+p3isRight);
			break;//游戏结束,终止循环
	
		}else{
			System.out.println("再来一次");//只有三次机会,所以可能会出现猜不对的情况
		}
		
		}
		
	}


}


public class Playergame {
	int number=0;
	public void guess(){
		number=(int)(Math.random()*10);
		System.out.println("我要猜的数字是"+number);
	}

}

public class Testgame {
	public static void main(String[]args){
		Guessgame game=new Guessgame();
		game.startgame();
		}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值