码迷,mamicode.com
首页 > 其他好文 > 详细

重写overrider 与重载overload的区别

时间:2018-01-31 17:06:16      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:too   extend   com   一个   toolbar   extends   pre   相等   over   

overload  :

public class PenDemo {
    public static void pen(){
        System.out.println("我是一支黑色的钢笔");
    }
    public static void pen(String color){
        System.out.println("我是一支"+color+"的钢笔");
    }
    public static void main(String[] args) {
        pen();
        pen("蓝色");
    }
}

方法重载(overload):

归纳:二个同,一个不同。

二个同:类名相同,方法名相同,一个不同:形参列表不同。

注意:1、方法重载与返回值类型没有任何关系。

2、方法重载与是否有static 没有任何关系。


overrider:

public class Parent {

    protected void Company(){
        System.out.println("公司总部");
    }
}
@Overrider
public class Son extends Parent {
    public void Company(){
        System.out.println("我是子公司总部");
    }
}

方法重写(override):两同、两小、一大。

两同:方法名相同、形参列表相同。

两小:1、子类重写的方法的返回值必须必父类方法的方法值更小或相等。

            2、子类重写的方法的抛出的异常必须必父类方法抛出的异常更小或相等。

一大:子类方法访问权限必须必父类方法访问权限更大或相等。

override:让编译器执行严格的检查,要求被修饰的方法,必须重写父类方法。


重写overrider 与重载overload的区别

标签:too   extend   com   一个   toolbar   extends   pre   相等   over   

原文地址:http://blog.51cto.com/11939704/2067378

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!