java中重写与重载的区别

重写和重载有个相同的特点:就是都使用了相同的方法名。

但在一个类里面,是不能定义两个相同的方法的。

这里的相同指的是:方法名相同,参数相同。

public class phone {
    public void QQ(){
        System.out.println("qq正式版");
    }
    public void QQ(){
        System.out.println("qq正式版");
    }
}

如果把类比作是一部手机,方法比作是手机里面的软件。

那么在一部手机里默认情况下是不能下载两个相同的软件的。也就是一个类中不能有两个相同的方法。但是可以下载两个不同版本(参数不同)的软件。

比如qq正式版,你只能下载一个。但是你可以下载另外一种版本的qq,比如qq轻聊版。

它们都是qq,但它们的版本不一样。所以可以同时加载。这里的版本指的其实就是参数。

qq正式版和qq轻聊版。qq就是方法的名字,正式版和轻聊版就是方法的参数。它们方法名相同但参数不同,这个就是重载。

public class phone {
    public void QQ(){
        System.out.println("qq正式版");
    }
    public void QQ(int a){
        System.out.println("qq轻聊版");
    }
}

如果要使用两个版本一样的qq的话。就得使用两部手机,这样就可以下载两个相同的qq了。

假如有两个类。一部是主机,一部是备用机。主机为备用机的父类。

我们知道子类可以继承父类中的方法。子类在使用父类的方法的同时还可以有自己的属性。

比如我在备用机手机下载了一个qq,这个qq和主机里的qq是一样的。但是可以有不同的实现。比如一个用来登大号,一个用来登小号。这个就是相同方法的不同表现,也叫重写。

public class phone {
    public void QQ(){
        System.out.println("大号");
    }
}
class phone2 extends phone{
    public void QQ(){
        System.out.println("小号");
    }
}

总结:

重载就是在同一个类中,定义两个方法名相同但参数不同的方法。

重写就是子类继承父类,使用父类一样的方法。但是方法的实现不一样。

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值