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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© luqh 中级黑马   /  2015-3-20 22:10  /  972 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

谁能通俗地介绍下super和this?还是不了解这两个关键字

5 个回复

倒序浏览
super带表父类的引用,this带表的是子类的引用。当子父类出现非private的同名变量,子类对象要访问父类的变量用“super.变量名”调用,子类对象要访问本类的变量用“this.变量名”调用!
回复 使用道具 举报
【A】super表示父类存储空间的标识,用在继承里面。可以在子类的构造方法中,使用super调用父类的构造方法。
【B】this表示本类对象,当成员变量和局部变量重名时,可以在方法里,用“this.”来区分二者,
然后this语句可以在构造方法中的第一行,调用重载构造方法。
【C】他们都还可以访问成员变量和成员方法。如:this.成员变量,super.成员方法()、
回复 使用道具 举报 1 0
this:代表本类对象的引用。
super代表父类的内存空间的标识 (理解为父类的对象 的引用 )


回复 使用道具 举报
this的使用方法:(代表当前类的对象)
                this.成员变量//this.方法名
                this.([参数]);调用当前类的构造方法

super的使用方法:(代表的是父类的对象)
                super.成员变量//super.方法名
                super([参数]);调用父类的构造方

创建对象时(Person person=new Person();//Person person=new Person("张三");),这两种情况下,无论父类有没有有参的构造方法,系统都会默认的先调用父类的无参的构造方法,再调用子类的无参或有参的构造方法。
回复 使用道具 举报
super关键字
        (1)super的用法和this很像
                this代表本类对应的引用。
                super代表父类存储空间的标识(可以理解为父类引用)
        (2)用法(this和super均可如下使用)
                访问成员变量
                        this.成员变量   调用本类的成员变量
                        super.成员变量   调用父类的成员变量
                访问构造方法
                        this(…)   调用本类的构造方法
                        super(…)  调用父类的构造方法
                访问成员方法
                        this.成员方法()  调用本类的成员方法
                        super.成员方法()  调用父类的成员方法
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马