黑马程序员技术交流社区

标题: Overlode和Override区别 [打印本页]

作者: nanliner    时间: 2016-5-24 00:47
标题: Overlode和Override区别
面试题:
        方法重写和方法重载的区别?方法重载能改变返回值类型吗?

        方法重载(Overload):本类中出现的方法名一样,参数列表不同的方法。与返回值无关。
                  子类对象调用方法的时候:先找子类本身,再找父类。

        方法重写(Override):子类中出现了和父类中方法声明一模一样的方法。
                  当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中的方法。
                  这样,即沿袭了父类的功能,又定义了子类特有的内容。

        方法重载能改变返回值类型,因为它和返回值类型无关。

        this关键字和super关键字分别代表什么?以及他们各自的使用场景和作用。

        this:this代表本类对应的引用。
        super:代表父类存储空间的标识(可以理解为父类引用,可以操作父类的成员)

        A:调用成员变量
                this.成员变量 调用本类的成员变量
                super.成员变量 调用父类的成员变量
        B:调用构造方法
                this(...)        调用本类的构造方法
                super(...)        调用父类的构造方法
        C:调用成员方法
                this.成员方法 调用本类的成员方法
                super.成员方法 调用父类的成员方法




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