Java learn 类和对象 部分

构造方法:
构造方法就是方法名和类名一样(包括大小写)
没有返回类型
**注意:**实例化一个对象的时候,必然调用构造方法

public Hero() {
        System.out.println("实例化一个对象的时候,必然调用构造方法");
    }
     
    public static void main(String[] args) {
        //实例化一个对象的时候,必然调用构造方法
        Hero h = new Hero();
    }

以上代码运行之后 就算没写打印函数 依然会显示——"实例化一个对象的时候,必然调用构造方法"这个内容

也就是 在你实例化一个对象的时候 就已经引用那个方法 默认的 即便没有构造出这个无参的方法也会默认提供一个

一旦提供了一个有参的构造方法
同时又没有显式的提供一个无参的构造方法
那么默认的无参的构造方法,就没有了。
示例:

 public Hero(String heroname){ 
        name = heroname;
    }
      
    public static void main(String[] args) {
        Hero garen =  new Hero("盖伦"); 
        Hero teemo =  new Hero(); //无参的构造方法“木有了”
    }  

也就是无参的构造方法就不会默认提供了
Hero teemo = new Hero();这个就是又没有显示的提供一个无参构造方法。

和普通方法一样 构造方法也是可以重载的 只是名称为类的名称罢了。按照实例化对象引用情况进行引用相应方法。

关键字 this:
其作用:
1、this即代表当前对象
2、通过this关键字访问对象的属性

3、如果要在一个构造方法中,调用另一个构造方法,可以使用this()

举例使this用途更清晰:

public class Hero{
	String name;
	float hp;
	float armor;
	int moveSpeed;
	
	public Hero(String name,float hp,float armor,int moveSpeed) {
        
       hp=hp;
        armor=armor;
        moveSpeed=moveSpeed;
		
	}
	public static void main(String[] args) {
		Hero jj=new Hero("gai",22.22F,0.22F,200);
		System.out.println(jj.armor+" "+jj.hp+" "+jj.moveSpeed+jj.name);
		
	}
}

在这里插入图片描述
以下:不用this. 仅仅这样码是不会打印其参数显示的
hp=hp;
armor=armor;
moveSpeed=moveSpeed;
对比 用到this. 的情况:

public class Hero{
	String name;
	float hp;
	float armor;
	int moveSpeed;
	
	public Hero(String name){
		this.name=name;
	}
	public Hero(String name,float hp,float armor,int moveSpeed) {
        this(name);//调用
       this.hp=hp;
        this.armor=armor;
        this.moveSpeed=moveSpeed;
		
	}
	public static void main(String[] args) {
		Hero jj=new Hero("gai",22.22F,0.22F,200);
		System.out.println(jj.armor+" "+jj.hp+" "+jj.moveSpeed+jj.name);
		
	}
}

在这里插入图片描述

打印出了相应的结果。。。其中this() 是在一个构造方法中调用其他构造方法
在码构造方法的过程中 常会用到this这个关键字。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值