Java中的多态简介

多态(Polymorphic),即是事物存在的多种形态。

前提:

  1. 要有继承关系;
  2. 要有方法重写;
  3. 要有父类引用指向子类对象。

特点:

  • 成员变量:编译看左边(父类),运行看左边(父类);
  • 成员方法:编译看左边(父类),运行看右边(子类);
  • 静态方法:编译看左边(父类),运行看左边(父类)。
    其中静态方法与类相关,不算是重写,自己的类调用自己。
    举例:
  • 父类:
class Father{
	int number = 10;
	
	public void Exercise() {
		System.out.println("登山");
	}
	
	public static void Drink() {
		System.out.println("朗姆酒");
	}
}
  • 子类:
class Son extends Father{
	int number = 20;
	
	public void Exercise() {
		System.out.println("跑步");
	}
	
	public static void Drink() {
		System.out.println("鸡尾酒");
	}
}
  • 测试类:
		Father f = new Son();
		System.out.println(f.number);
		f.Exercise();
		f.Drink();
		
		Son s = new Son();
		System.out.println(s.number);
		s.Exercise();
		s.Drink();
  • 运行结果:
10
跑步
朗姆酒
---------------------------------
20
跑步
鸡尾酒

可以对照测试举例感受以上多态特点。

猜你喜欢

转载自blog.csdn.net/qq_34538534/article/details/84950829
今日推荐