一:含义
1:使用this解决构造器问题
class person{
String name;
int age;
public person(String name,int age){
this.name = name;
this.age = age;
}
/* 不同想之前那样形参起不同的名字
public person(String pname,int page){
name = npame;
age = page;
}
*/
}
二:深入理解this
:::danger 简单来说:哪个对象调用,this就代表哪个对象 :::
三:this的注意事项和使用细节
this关键字__可以用来访问本类的属性、方法、构造器
public person(String name,int age){
this.name = name;
this.age = age;
this.eat();
}
this用于区分当前类的属性和局部变量
public person(String name,int age){
this.name = name;
this.age = age;
}
访问成员方法的语法: this.方法名(参数列表);
this访问构造器: this(参数列表) ; __注意只能在构造器中使用(即只能在构造器中访问另外一个构造器,必须放在第一条语句)
public person(){
this("sakura",20)
System.out.println("无参构造器被调用");
}
public person(String name,int age){
System.out.println("有参构造器被调用");
}
-
四:练习
package Date0730;
/**
* 作者:sakura
* 日期:2022年07月30日 23:06
*/
public class personTest {
public static void main(String[] args) {
person sakura = new person("sakura", 21);
person lf = new person("sakura", 20);
sakura.compareTo(lf);
}
}
class person {
String name;
int age;
public person(String name,int age){
this.name = name;
this.age = age;
}
public void compareTo(person p){
if (this.name.equals(p.name)){
System.out.println("姓名相同");
}else{
System.out.println("姓名不同");
}
}
}