类的使用和对象的创建,变量的条用,函数的构造

定义类,函数使用,变量调用

在使用java程序语言编写代码的时候,函数的定义至关重要。
到目前为止,灵活的使用函数,创建对象,定义变量这项编程基本功,对于大部分程序员来说可是走一步忘一步,看似简单,实则对编程语言的理解不够深入。
当然,如果得心应手的的话,对后期的编程效率的提升是肉眼可见的。
例如:对于一个人投币的投篮机器 ,当我们创建一个“类(shootingmachine)”,继承这个类的有四个属性,和后续的所进行的动作,我们需要定义成员变量,成员变量:定义在函数外部的变量是成员变量。为什么说外部呢,因为在定义“类”的时候,它是可以被外界访问的,所以能从代码中看到class前面有一个public(公有类)
编写如下代码:

public class shootingmachine {
	// shooting machine 人投币后的就可以投篮机器
	int Hcoin;                           //需要多少硬币
	int amount;                          //放入多少钱
	int total;                           //总收入金额后的余额        
	int balance;                         //当前的金额
	void showPrompt()                    //提示信息,是否开始,请投币
	{
		System.out.println("start?");
	}
	
	void showBalance()                     //显示余额  
	{
		System.out.println("目前金额为:"+balance);
	}
	void insertMoney(int amount)          //投入了多少钱 
	{
		balance = balance + amount;
		this.showBalance();
		
	}
	
	void playShoot()                       //开始投篮
	{
		if(balance>=Hcoin)                 //如果投入的钱大于所需的硬币
		{ 
			System.out.println("Play with go.");
			balance = balance - Hcoin;
			total = total + Hcoin;
			System.out.println("目前还剩余额为:"+total);
		}
	}

有了“类”,还需要对象的创建

创建类的对象,new这个关键字可是或不缺少的;
后续变量的调用,通过创建对象变量来管理这些函数,也称为本地变量;
本地变量的生存期和作用域都是函数内部,也就是在如下代码中的本地函数中;

public static void main(String[] args) {
		// TODO Auto-generated method stub
		//有了类了,还需要怎样,我要把对象进行创建
		shootingmachine s = new shootingmachine();         //创建对象变量
		s.showPrompt();
	    s.showBalance();
		s.insertMoney(100);                                //投入金额数
		s.playShoot();
		s.showBalance();

构造函数,重载函数以及this关键字的使用细节

构造函数和重载函数的出现,我想了解过C++的朋友,对这两个函数的的定义和使用方法大概不会陌生的;
他们的使用方法同样在Java中也同样适用,但可不要忘了这两者的使用细节;
1.构造函数是一种特殊的函数。其主要功能是用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。构造函数与类名相同,可重载多个不同的构造函数。在JAVA语言中,构造函数与C++语言中的构造函数相同,JAVA语言中普遍称之为构造方法。
2.重载函数是函数的一种特殊情况,为方便使用,Java允许在同一范围中声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数、类型或者顺序)必须不同,也就是说用同一个函数完成不同的功能。这就是重载函数。重载函数常用来实现功能类似而所处理的数据类型不同的问题。不能只有函数返回值类型不同。
如下代码:

shootingmachine()                    //构造函数
	{
		this.balance = 0;
	}
	shootingmachine(int Hcoin)           //重载函数
	{
		this.Hcoin = Hcoin;              //this关键字可以调用内部变量
	}
注意this关键字对内部函数变量的调用

对于this这个关键字
1.this代表当前对象的一个引用。所谓当前对象,指的是调用类中方法或属性的那个对象。
2.this只能在方法内部使用,表示对“调用方法的那个对象”的引用。
3.this不能用于静态方法。main方法也是静态的,所以this也不能用于main方法。
例如在本程序中:通过点“.”运算符调用某个对象的函数,在成员函数内部直接调用自己(this)的其他函数,在一个类的内部中成员函数调用另一个成员函数需要用到this,之外的就不管了。

shootingmachine()                    //构造函数
	{
		this.balance = 0;
	}
	 void shootingmachine(int Hcoin)           //重载函数,括号里的参数不能相同与构造函数
	{

		this.Hcoin = Hcoin;              //this关键字可以调用内部变量
	}
	void setHcoin(int number)               //设置所需硬币数            
	{
		this.number= number;
		this.playShoot();
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值