zoukankan      html  css  js  c++  java
  • 重写与重载

    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源码:

    在这里插入图片描述


  • 相关阅读:
    针对图片性能优化的总结
    activityGroup源码分析
    针对BaseAdapter的扩展
    ADB命令介绍
    一个对内存分析的文章。 非常棒。
    hdu 1285 确定比赛名次(很典型的拓扑排序)
    经典排序之归并排序
    hdu 1166 敌兵布阵 (树状数组)
    hdu 3518 Boring counting (后缀数组)
    hdu 3584 Cube(树状数组)
  • 原文地址:https://www.cnblogs.com/ruanjianlaowang/p/11182489.html
Copyright © 2011-2022 走看看