Java之重载重写

本文解释了Java中的重载(Overload)概念,即在同个类中通过不同的参数列表实现多个同名方法。同时介绍了重写(Override)的概念,即子类继承父类时,对特定方法的参数、返回类型和实现进行替换。两者是面向对象编程中重要的特性。
摘要由CSDN通过智能技术生成

重载(Overload):在同一类中多个方法名一样但方法中的参数列表不同,代码也不一样

下面举个例子便于我们理解:

public class Overload {
    public static void main(String[] args) {
        OverloadPerson man = new OverloadPerson();
      man.person();
      man.person(18);
      man.person(9999.999999);
    }
}
class OverloadPerson{
  void person(){       //以person()为方法进行第一次无参
      System.out.println("我是中国人");
    }
    void person(int a){      //第二次进行整型参数
        System.out.println("今年有:" + a + "岁");
    }
    void person(double a){   //第三次进行双精度型参数,重载方法名相同但参数不同
        System.out.println("我有:" + a + "元");
    }
}

运行结果如图所示:

重写/覆盖(Override):子类有一个方法和父类的某个方法的名称,返回类型,参数一样,也就是说子类的这个方法覆盖了父类的那个方法

同样我们也举个例子加以理解:

public class Animal {
    public static void main(String[] args) {
        Animal animal = new Animal();
        Animal cat = new Cat();
        animal.think();
        cat.think();
    }

    void think() {
        System.out.println("小唐哥爱猫猫!mua~");
    }
}
 class Cat extends Animal{   //继承父类Ainmal
     @java.lang.Override    //重写
     void think() {
         super.think();  //调用父类方法,所以出现两次 小唐哥爱猫猫!mua~ 
         System.out.println("猫猫爱小唐哥!喵~");
     }
 }

运行效果如图所示:

重写与重载区别: 如有错误请指正,谢谢!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值