多态性的体现
在Java语言中,多态性体现在两个方面:由方法重载所实现的静态多态性(编译时多态)和方法覆盖所实现的动态多态性(运行时多态)。
重载
重载,是指同一个类中允许存在多个同名方法,但这些方法的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)的现象。
在编译阶段,具体调用哪个被重载的方法,编译器会根据参数的不同来静态确定调用相应的方法。
重载:
package test;
public class A {
public void method()
{
System.out.println("参数为空!");
}
public void method(int x)
{
System.out.println("参数为:"+x);
}
public void method(int x, int y)
{
System.out.println("参数为:"+x+"和"+y);
}
}
实例:
package test;
public class JavaDemo {
public static void main(String[] args) {
int b=2,c=3;
A a = new A();
a.method();
a.method(b);
a.method(b,c);
}
}
运行结果: