A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

当局部变量和成员变量同名的时候是必须要加this关键字的,但是有时候又省略不写,而且在方法上也经常省略不写,不是很明白,希望大神帮忙。

3 个回复

倒序浏览
this强调这个类的属性,局部变量的是方法的属性,不是类的,当重名当然就要加this区分一下是两个的哪个,没有重名的自然不要区分嘛,但是类的属性都加this也是没有错的。麻烦而已
回答完毕
回复 使用道具 举报
this关键字代表的是调用这个函数的对象引用。这话有点抽象,我给你个例子,你就必须明白了。。
package cn.itheima.test;

class User{
        String name;

        public User(String name) {
                this.name = name;
                System.out.println("this的地址值是:"+this);
        }
       
       
       
}
       

public class Demo1 {
       
        public static void main(String[] args) {
                User user = new User("张三");
                System.out.println("user的地址值是:"+user);
        }
       
}
输出的结果是:
this的地址值是:cn.itheima.test.User@19e0bfd
user的地址值是:cn.itheima.test.User@19e0bfd
回复 使用道具 举报
牛奋 来自手机 中级黑马 2015-5-15 15:00:01
板凳
这个够细,必须明白,谢谢!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马