Java中重载和重写的区别

简单来说,重载就是在同一类中允许同时存在一个以上的同名方法,只要这些方法的参数个数或类型不同即可,而重写(重置、覆盖)是子类重新定义父类中己经定义的方法,即子类重写父类方法。

方法的重载

方法的重载就是在同一类中允许同时存在一个以上的同名方法,只要这些方法的参数个数类型不同即可。总得来有三种情况:

1.参数个数不同,构成重载

public int add(int a,int b){
    return a+b;
}

public int add(int a){
    return a
}

2.参数类型不同,构成重载

public int add ( int a,int b) {
    return a+b;
}

public double add ( double a,double b) {
    return a+b;
}

3.参数顺序不同,构成重载

public int add ( int a,double b){
    return 1;
}

public int add ( double a,int b){
    return 1;
}

注意:虽然在方法重载中可以使两个方法的返回值不同,但只有返回值不同不足以判定是重载,区分是否重载还是通过参数的个数以及类型来设置。

posted @ 2017-11-05 17:42  的川  阅读(1686)  评论(0编辑  收藏  举报