Bootstrap

重写和重载

目录

一、重写(super)

 1.重写

 2.super关键字的使用

二、重载

1.重载


一、重写(super)

 1.重写

重写是子类对父类的允许访问的方法的实现过程进行重新编写,返回值和形参都不能改变。即外壳不变,核心重写。

package com.etc.override.override;

public class Animal {
    public void move(){
        System.out.println("动物可以移动。");
    }
}
class dog extends Animal{
    public void move(){
        System.out.println("狗可以跑。");
    }
        }
 class Testdog{
    public static void main(String args[]){
        Animal A = new Animal();
        Animal B = new dog();
        A.move();
        B.move();
    }
}

动物可以移动。
狗可以跑。

 2.super关键字的使用

当子类调用父类的被重写方法时,要使用super关键字

public class Animal {
    public void move(){
        System.out.println("动物可以移动。");
    }
}
class dog extends Animal{
    @Override
    public void move() {
        super.move();//应用Animal的move方法
        System.out.println("狗可以跑");
    }
}
 class Testdog{
    public static void main(String args[]){
        Animal B = new dog();//dog的对象
        B.move();//执行dog类的方法
    }

二、重载

1.重载

从简单说,就是函数或者方法有相同的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者重载方法。在Java中同一个类中的2个或2个以上的方法可以有同一个名字,只要它们的参数声明不同即可:

public class Overload {
    public int test(){
        System.out.println("test1");
        return 1;
    }
    public void test(int a){
        System.out.println("test2");
    }
    public String test(int a,String b){
        System.out.println("test3");
        return "test3";
    }
    public static void main(String[] args){
        Overload o  = new Overload();
        System.out.println(o.test());
        o.test(1);
        System.out.println(o.test(1,"1234"));

    }
}
test1
1
test2
test3
test3

 

;