回归基础系列-重载与覆盖(重写)[JAVA]

重载:方法具有同一名字,但是具有不同参数类型就是重载,这也是多态的表现。

如:

/**
 * 重载:方法具有同一名字,不同参数类型就是重载,这也是多态的表现
 * @author Ant
 *
 */
public class Overloading {

    public void receive(int i){
        System.out.println("接收了int类型的数据:"+ i);
    }

    public void receive(double i){
        System.out.println("接收了double类型的数据:"+ i);
    }

    public void receive(String i){
        System.out.println("接收了String类型的数据:"+ i);
    }

    public static void main(String[] args) {
        Overloading o = new Overloading();
        o.receive(1);
        o.receive(1.0);
        o.receive("hello world");
    }
}

输出:
接收了int类型的数据:1
接收了double类型的数据:1.0
接收了String类型的数据:hello world


其实重载在java无处不在,随便一个String类都能见到,忘记时,多想想,这就是overload(重载)
这里写图片描述

重写/覆盖
子类继承父类,子类具备父类所有特性,子类可以重写父类方法。
特点:参数和返回值都得相同。

/**
 * 重写/覆盖
 * 子类继承父类,子类具备父类所有特性,子类可以重写父类方法,特点:参数和返回值都得相同。
 * @author Ant
 *
 */
public class Overriding {
    static class Auto {
        public void startEngine(){
            System.out.println("引擎启动");
        }
    }

    static class Car extends Auto{
        public void startEngine(){
            System.out.println("车的引擎启动");
        }
    }

    static class Bus extends Auto{
        public void startEngine(){
            System.out.println("巴士的引擎启动");
        }
    }

    public static void main(String[] args) {
        Auto auto = new Auto();
        Car car = new Car();
        Bus bus = new Bus();
        auto.startEngine();
        car.startEngine();
        bus.startEngine();
    }
}

输出:
引擎启动
车的引擎启动
巴士的引擎启动

有意思吧?


下篇将讲创建多线程的三种方法
加油!!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值