黑马程序员技术交流社区

标题: 谁能通俗地介绍下super和this [打印本页]

作者: luqh    时间: 2015-3-20 22:10
标题: 谁能通俗地介绍下super和this
谁能通俗地介绍下super和this?还是不了解这两个关键字

作者: 黑色幽默K    时间: 2015-3-20 22:18
super带表父类的引用,this带表的是子类的引用。当子父类出现非private的同名变量,子类对象要访问父类的变量用“super.变量名”调用,子类对象要访问本类的变量用“this.变量名”调用!
作者: 夜班心桥    时间: 2015-3-20 22:31
【A】super表示父类存储空间的标识,用在继承里面。可以在子类的构造方法中,使用super调用父类的构造方法。
【B】this表示本类对象,当成员变量和局部变量重名时,可以在方法里,用“this.”来区分二者,
然后this语句可以在构造方法中的第一行,调用重载构造方法。
【C】他们都还可以访问成员变量和成员方法。如:this.成员变量,super.成员方法()、
作者: 山里孩子    时间: 2015-3-20 22:58
this:代表本类对象的引用。
super代表父类的内存空间的标识 (理解为父类的对象 的引用 )



作者: 浅步调    时间: 2015-3-21 00:04
this的使用方法:(代表当前类的对象)
                this.成员变量//this.方法名
                this.([参数]);调用当前类的构造方法

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

创建对象时(Person person=new Person();//Person person=new Person("张三");),这两种情况下,无论父类有没有有参的构造方法,系统都会默认的先调用父类的无参的构造方法,再调用子类的无参或有参的构造方法。
作者: 东方蓂荚    时间: 2015-3-21 07:16
super关键字
        (1)super的用法和this很像
                this代表本类对应的引用。
                super代表父类存储空间的标识(可以理解为父类引用)
        (2)用法(this和super均可如下使用)
                访问成员变量
                        this.成员变量   调用本类的成员变量
                        super.成员变量   调用父类的成员变量
                访问构造方法
                        this(…)   调用本类的构造方法
                        super(…)  调用父类的构造方法
                访问成员方法
                        this.成员方法()  调用本类的成员方法
                        super.成员方法()  调用父类的成员方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2