Java中的this关键字:this(1)


这样写的意义是区分成员变量(类中的非静态变量)与方法中(构造方法,传值方法setValue())传进来的局部变量的重名问题、

我们知道类变量(静态变量)是不依赖于类的,最先加载进来的就是类变量,(静态变量)

之后加载类的时候,类里面的方法,构造方法中的形参。是优先顺序的。

也就是不加this.成员变量名的时候,

如:      public void setTestint(int testint) {        testint = testint;

} //他是形参变量自己传给自己,最后成员变量还是没被赋值

执行如下代码:

package bilibili.bobro.operator.test;

public class ThisTest

{

public static void main(String[] args)

{

Test t=new Test();

System.out.println(“t.getTestchar():”+t.getTestchar());

System.out.println(“t.getTestdou():”+t.getTestdou());

System.out.println(“t.getTestint():”+t.getTestint());

System.out.println(“t.getTeststr():”+t.getTeststr());

}

}

class Test

{

private int testint;

private boolean testboo;

private String teststr;

private double testdou;

private char testchar;

public int getTestint() {

return testint;

}

public void setTestint(int testint) {

testint = testint;

}

public boolean isTestboo() {

return testboo;

}

public void setTestboo(boolean testboo) {

testboo = testboo;

}

public String getTeststr() {

return teststr;

}

public void setTeststr(String teststr) {

teststr = teststr;

}

public double getTestdou() {

return testdou;

}

public void setTestdou(double testdou) {

testdou = testdou;

}

public char getTestchar() {

return testchar;

}

public void setTestchar(char testchar) {

testchar = testchar;

}

}

控制台输出结果如下:

如果不加上this,那么

setVal(形参)

{

形参(局部变量)=形参(局部变量)

}

把实参传给方法中的形参,然后形参自己给自己赋值,类中的成员变量压根没参与。

传进来的实参碰都没碰到,所以还是空的。

局部变量:方法定义中或者方法声明上。

局部变量:在内存的栈中。

局部变量:随方法的调用而存在,随着方法的调用完毕而消失。

如果不加上this,人家局部变量反手一个自己传自己,传完消失注销释放在内存的栈上的内存。

百花丛中过,片叶不沾身,你的成员变量SET方法什么值也没捞到。

就酱紫~~~~

所以this很重要!~~

最后

分布式技术专题+面试解析+相关的手写和学习的笔记pdf

还有更多Java笔记分享如下:

image

JvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5bCP57qi5pelc3Jz,size_20,color_FFFFFF,t_70,g_se,x_16)

就酱紫~~~~

所以this很重要!~~

最后

分布式技术专题+面试解析+相关的手写和学习的笔记pdf

还有更多Java笔记分享如下:

[外链图片转存中…(img-Gw7LXnHR-1714335456088)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

  • 19
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值