java中多态和重载是什么关系啊,哪位大虾能帮帮小弟啊

来源:百度知道 编辑:UC知道 时间:2024/05/22 02:21:49

重载(Overload):函数名相同,但函数的参数类型、参数个数、参数顺序不同
覆盖(Override):父类定义了一个方法,子类又重新定义了一个一模一样的方法,但里边的代码体可以不一样。
import java.io.*;
//一个使用多态的例子
class Instrument{
public void play(){
System.out.println("Instrument.play()");
}
}
class Wind extends Instrument{
public void play(){
System.out.println("Wind.play()");
}
}
class Stringed extends Instrument{
public void play(){
System.out.println("Stringed.play()");
}
}
class Brass extends Instrument{
public void play(){
System.out.println("Brass.play()");
}
}
public class Music01{
public static void tune(Instrument i){
i.play();
}
public static void main(String[] args){
Wind flute=new Wind();
Stringed violin=new Stringed();
Brass frenchHorn=new Brass();
tune(flute);
tune(violin);
tune(frenchH