关闭

Java中的方法覆盖

标签: 继承java对象多态覆盖
110人阅读 评论(0) 收藏 举报
分类:

Java中的override是java多态的一种体现,当调用具体的方法时,会根据具体的当前的对象(父类对象或者子类对象),来确定执行的具体方法。示例如下:

Super.java

public class Super {

    public Super() {
        System.out.println("super的构造方法");
        this.overrideMe();//构造父类时,调用父类的;调用子类时,调用子类的
        overrideMe();//两者效果是一样的
    }

    public void overrideMe() {
        System.out.println("super");
    }
}    

Sub.java

public class Sub extends Super {

    public Sub(){
        System.out.println("Sub的构造方法");
        overrideMe();//会调用子类的方法
        super.overrideMe();//会调用父类的方法
    }

    @Override
    public void overrideMe(){
        System.out.println("Sub");
    }

}

如下语句调用:

Super sub = new Sub();

输出结果如下:

这里写图片描述

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5868次
    • 积分:309
    • 等级:
    • 排名:千里之外
    • 原创:19篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类