java中this关键字的使用
hello,大家好,这里是可傥。说完final和static之后,今天我们继续来聊java中的关键字 this。
《JAVA编程思想》中对this是这么介绍的:this关键字只能在方法内部使用,表示对“调用方法的那个对象”的引用。我觉得说的很明白。this就是表示当前对象,即指向当前对象。下面具体展开this的用法。
一、成员变量
如下面代码:
public class User {
private String name;
public User(String name){
this.name = name;
}public String getName() {
return name;
}public void setName(String name) {
this.name = name;
//以this来区分局部变量和成员变量
}@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
'}';
}
}
大家应该都用过setter的方法,里面this.name = name; 假设没有this,那么如何来区分调用setter方法的对象值和参数呢?所以this调用了该对象的成员变量name,把形参的值赋予对象中的name。
二、构造方法 【java中this关键字的使用】一个类必须拥有大于等于1的构造方法,而在构造方法中,也可以用this去调用该对象的其他构造方法。如下面代码:
public class User {
private String name;
public User(String name){
this.name = name;
}public User(){
this("ketang");
System.out.println("this在构造方法中必须放在最前面");
//放后面会报错:(编译器的规定)
//Call to 'this()' must be first statement in constructor body
}public String getName() {
return name;
}public void setName(String name) {
this.name = name;
}@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
'}';
}
}
构造方法中调用其他构造方法,我们可以用this来表示。
三、调用方法 this代表类的当前对象,对象可以调用方法,this也可以调用。某方法返回值为某类的时候,某个该类对象去调用该方法的时候,也可以通过return this表示返回该对象。
this的关键字就聊到这,这里是可傥,将会分享自己的所学以及所得,欢迎大家一起交流。csdn地址:https://blog.csdn.net/kaneand...
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- Shell-Bash变量与运算符
- JS中的各种宽高度定义及其应用
- 2021-02-17|2021-02-17 小儿按摩膻中穴-舒缓咳嗽
- 深入理解Go之generate
- 异地恋中,逐渐适应一个人到底意味着什么()
- 我眼中的佛系经纪人
- 《魔法科高中的劣等生》第26卷(Invasion篇)发售
- “成长”读书社群招募