当前位置: 代码迷 >> 综合 >> Java中的方法重载与重写
  详细解决方案

Java中的方法重载与重写

热度:77   发布时间:2024-03-08 05:23:44.0

重载(Overloading)

方法名称相同,但是方法的参数列表不同

public void hello(){System.out.println("hello");
}//重载 overloading
public void hello(String str){System.out.println("hello" + str);
}//方法名称相同 都是 ‘hello’
//参数列表不同 一个没有参数 一个有一个字符串类型的参数str

 

重写(Overriding)

子类重写父类方法,子类重写的方法与父类的方法的方法名称和参数列表都相同

class Father{public void hello(){System.out.println("hello from father");}
}class Child extends Father{//重写 overriding 子类方法的方法名称与参数列表与父类方法都相同@Overridepublic void hello(){System.out.println("father from child"); }}

 

 

重载是一个编译期(Compilation Period)概念: 在编译时根据参数变量的类型判断应该调用哪个方法;

重写是一个运行时(Runtime)概念: 在运行的时候,根据引用变量所指向的实际对象的类型来调用方法。