试题详情
简答题this、super关键字有何用途?
  • 子类在继承父类时,可能会出现变量隐藏、方法覆盖(overriding)等现象。变量隐藏指子类的成
    员变量与父类成员同名,此时,父类的成员变量被隐藏。方法覆盖指子类的方法与父类的方法名相同,方法的返回值类型、入口参数的数目、类型、顺序均相同,只是方法实现的功能不同,此时父类的方法被覆盖。如果子类需要调用或访问父类被隐藏的变量或被覆盖的方法,可以使用super关键字实现。Java提供关键字super来实现对父类的成员和方法的访问。
    Super有三种情况可以使用:
    ⑴ 用来访问父类中被覆盖的方法;
    ⑵ 用来访问父类中被隐藏的成员变量;
    ⑶ 用来调用父类中的构造方法。
    关键字this可以出现在类的构造方法和非static修饰的成员方法(即实例方法)中,代表实例对象自身,有以下几种使用情况:
    (1)在类的成员方法中,可以通过this来访问实例对象的成员变量或调用成员方法。
    (2)在类的成员方法中,区分成员变量和局部变量;
    (3)在类的成员方法中,使用this返回实例对象本身的引用;
    (4)在类的构造方法中,使用this调用该类的其他构造方法。
  • 关注下方微信公众号,在线模考后查看

热门试题