05.Java面向对象——this关键字

举个栗子:

class Person {
	String name;
	int age;
	public Person(String con_name, int con_age) {
		name = con_name; // 为name属性赋值
		age = con_age; // 为age属性赋值
	}
}

表示年龄:

  • 构造方法中使用con_age
  • 成员变量使用age

带来的问题——程序的可读性很差,最好将一个类中表示年龄的变量都用age表示,但是会导致成员变量与局部变量冲突,无法将年龄传给age。为了解决上述问题,引入this

this的三大作用

1、可以明确的访问一个类的成员变量,解决与局部变量名称的冲突问题

class Person {
	int age;
	public Person(int age) {
	    this.age = age; // 构造方法中使用age,则是访问局部变量
        //“this.age”则是访问成员变量
	}

	public int getAge(String con_name) {
		return this.age;
	}
}

2.调用成员函数

class Person {
	public void openMouth() {
		...
	}
	public void Speak() {
		this.openMouth();
	}
}

这里的this可以省略不写

3.调用成员函数(以后再说吧,不想学了)

你可能感兴趣的:(Java自学笔记)