java override 和 overload的区别

方法名相同,但各自的参数不同,称为方法重载(Overload):

class Hello {
    public void hello() {
        System.out.println("Hello, world!");
    }

    public void hello(String name) {
        System.out.println("Hello, " + name + "!");
    }

    public void hello(String name, int age) {
        if (age < 18) {
            System.out.println("Hi, " + name + "!");
        } else {
            System.out.println("Hello, " + name + "!");
        }
    }
}

子类如果定义了一个与父类方法签名完全相同的方法,被称为覆写(Override):

class Person {
    public void run() {
        System.out.println("Person.run");
    }
}

class Student extends Person {
    @Override
    public void run() {
        System.out.println("Student.run");
    }
}
posted @ 2020-10-15 16:05  HF10  阅读(94)  评论(0)    收藏  举报