this关键字与构造器

this关键字是类里用来区分全局变量与局部变量的。

this关键字

  1. this的引用:

    • 在类中,有局部变量和类的属性同名的情况,而在方法与构造器中变量又是就近原则
    • 所以引出this来解决此问题
    • 且this.变量必是指类中的属性,方便与局部变量区分
  2. this使用细节:
    ① this关键字可以用来访问本类的属性、方法、构造器
    ② this用于区分当前类的属性和局部变量
    ③ 访问成员方法的语法:this.方法名(参数列表)
    ④ 访问构造器的语法:this(参数列表)
    注意:④只能在构造器中使用,且规定必须放在第一条语句
    即,只能在构造器中访问另外一个构造器

  3. this只能在类里面中使用,不能在类定义外使用

接下来看个例子:

public class ThisExercise{
	//编写一个main方法
	public static void main(String[] args){
		/*this练习:
		定义类Person,里面有age、name属性,并提供comepareTo方法用来比较两个人是否相等,相等返回true,否则返回false
		*/
		Person p1 = new Person(18, "part");
		Person p2 = new Person(20, "jary");
		System.out.println("比较结果=" + p1.comepareTo(p2));
	}
}
class Person{
	int age;
	String name;
	public Person(int age, String name){
		this.age = age;//this.变量必是指类中的属性与局部变量区分开
		this.name = name;//this.name指类中的属性,name则是形参
	}
	public boolean comepareTo(Person p){
		return this.age == p.age && this.name == p.name;
	}
}

运行结果:
在这里插入图片描述

构造器

构造器其实没有像它的名字一样神秘,就是和方法相似的东西,只是没有方法里的返回值类型。

  • 构造方法又称构造器(constructor),是类的一种特殊方法,它的主要作用是完成对新对象的初始化
    特点:
    ①方法名和类名相同
    ②没有返回值
    ③在创建对象时,系统会自动调用该类的构造器完成对对象的初始化

  • 基本语法:[修饰符] 方法名 (形参列表){方法体;}

  • 构造器:
    ①构造器的修饰符可以默认(不写就是默认)
    方法名和类名必须一致
    ③构造器没有返回值
    ④构造器的调用,由系统完成(不再需要对象.构造器,即直接在创建对象时就调用了)

习题辅助理解:

public class ConstructorDetail{
	//编写一个main方法
	public static void main(String[] args){
		//构造器也可以重载
		Person wolfpeople = new Person("缄默德克萨斯",22);//构造器由系统调用
		Person wolf = new Person(22);
		//这里Person(22)就直接调用了构造器,不用再通过对象调用,直接由系统调用
	}
}
class Person{
	String name = "德克萨斯";
	int age = 14;
	//第1个构造器
	public Person(String pname, int page){//方法名和类名必须一致
		name = pname;
		age = page;
		System.out.println("限定:"+ name+" 年龄:"+age);
	}
	//第2个构造器(也是重载)
	public Person(int page){
		page = age;
		System.out.println("干员:"+ name+" 年龄:"+age);
	}
}

运行结果:
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值