重写与重载

204 阅读2分钟

1. 问题描述

随着头越来越秃,会发现Java中重写与重载越来越重要,贯穿整个编程过程,用通俗的语言简单介绍

2. 问题方案

重写和重载都是java多态性的一种表现。

2.1 重写(Override)

2.1.1 重要特征

(1)重写方法位于两个类中;

(2)方法名称与参数一模一样

2.1.2 主要场景

父类与子类之间。

如果你觉得文章对你有些帮助,欢迎微信搜索「软件老王」第一时间阅读或交流!
2.1.3 示例
    class Animal{
        public void move(){
            System.out.println("我是父类,跑和走");
        }
    }

    class Dog extends Animal{
        public void move(){
            System.out.println("我是子类,狗可以跑和走");
        }
    }
    class cat extends Animal{
    public void move(){
        System.out.println("我是子类,猫猫走路");
    }
    }

    public class Test{
        public static void main(String args[]){
            Animal a = new Animal();
            Animal b = new Dog();
            Animal  c = new cat();
            a.move();
            b.move();
            c.move();

        }
    }
   
   执行结果:
    我是父类,跑和走
    我是子类,狗可以跑和走
    我是子类,猫猫走路

2.2 重载(Overload)

2.2.1 重要特征

(1)重载方法位于一个类中;

(2)方法名称一样,但是参数个数或者类型不能一样。

2.2.2 常用场景

构造函数,其实为了使程序具有更好的扩展性或者兼容性,重载也常常被用到,比如我们常用的System.out.println()就是典型的重载。

2.2.3 示例
    public static void main(String[] args) {

        System.out.println(11);
        System.out.println(11L);
        System.out.println(11d);
        System.out.println("打发斯蒂芬单点");

    }
    
    执行结果:
    11
    11
    11.0
    打发斯蒂芬单点

JDK中Println源码:

在这里插入图片描述


更多知识请关注公众号:「软件老王」,IT技术与相关干货分享,回复关键字获取对应干货,java,送必看的10本“武功秘籍”;图片,送100多万张可商用高清图片;面试,送刚毕业就能月薪“20k”的java面试题等。