区分局部变量和成员变量
eg:
(资料图片仅供参考)
public class Student{private int age;public void method(){int age = 10;System.out.println(age);//10System.out.println(this.age);//0使用this.可以直接使用成员变量的age}}
2、this的本质:代表所在方法调用者的地址值
3、区分的原理:代表所在方法调用者的地址值:
此时main方法里面的调用者是s,s记录的地址值是001;this的本质是方法调用者的地址值,所以this指向的地址值是001。
this的内存原理:解析:
等号的右边name出发了就近原则,表示setName里面形参string name里面的参数,而形参里面接收的是s1.setname里面的竹小玲,所以等号右边就是竹小玲,等号左边用this调用的name是s1指向的地址值001。该句话意思就是把竹小玲赋值给等号左边001里面的name。此时方法执行完毕,进行出栈
成员变量和局部变量的区别1、成员变量:类中mian方法外的变量(没有上下规定,在代码中为了方便阅读,把成员变量放在最上面)
2、局部变量:main方法里面的变量
3、成员变量和局部变量的区别:(1)类中位置不同:成员变量:类中,方法外
局部变量:类中,方法里面
(2)初始化值不同:成员变量:有默认初始化值(一般是null和0)
局部变量:使用之前需要完成赋值
(3)内存位置不同:成员变量:存储在堆内存对象里面
局部变量:存储在栈内存方法里面
(4)生命周期不同:成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用而存在,随着方法的运行结束而消失
(5)作用域:成员变量:整个类中有效
局部变量:仅在当前方法中有效
关键词:
Copyright 2015-2022 大众食品网 版权所有 备案号:豫ICP备20014643号-14 联系邮箱: 905 14 41 07@qq.com