首页 > 学院 > 开发设计 > 正文

this&super的用法

2019-11-11 05:28:55
字体:
来源:转载
供稿:网友

this通常指当前对象,它有两个用处: 1.利用this引用当前对象的某个方法或某个成员; 2.调用当前对象的其他构造方法

如果想引用父类的某种东西或调用父类的某个构造方法用super

this和super调用构造方法时,根据其后所带的参数来确定调用的具体是哪个构造方法,如super()表示调用的是父类的无参的构造方法

另外,在静态方法中不能用this,因为静态方法不属于任何特定的对象,它只属于当前类,而this是属于当前类的对象的

public class Teacher extends Person { PRivate String name = "tom"; public Teacher() { super(2); System.out.println("this is a teacher"); } public static void main(String[] args) { Teacher teacher = new Teacher(); System.out.println(teacher.name); }}class Person { public Person() { System.out.println("this is a Person"); } public Person(int i) { System.out.println("Person"); }}

输出结果为 这里写图片描述

在子类Teacher的构造方法中调用的是父类带参数的构造方法,而且super()必须写在子类构造方法的第一行,否则编译报错;在main方法中如果使用this.name,编译时会报错。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表