欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

多态

程序员文章站 2022-03-15 19:25:33
...

多态


个人理解
多态:当同一个类有多个子类重写了同一个方法时,若有某个方法a需要通过引用参数(各个子类)来调用各个子类的这同一个方法b无需因为引用参数不同而重写不同的方法a,只需把引用参数改为父类则在使用方法a时则会自动根据实际传入的子类选择该子类的方法。
如:

public class test {
	int a = 1;
	public static void main(String[] args)
	{
		test tt = new test();
		animal ani = new animal();
		dog dd = new dog();
		cat cc = new cat();
		tt.letAnimalShout(ani);
		tt.letAnimalShout(dd);
		tt.letAnimalShout(cc);
	}
	public void letAnimalShout(animal bb) {  //在这里,由于dog和cat继承了animal类,故用animal类作为引用参数,却可以输入dog和cat类对象
		//却运行结果根据输入类对象的shout方法的不同而不同,这就是多态性质,有了多态性则无需为本方法重写引用参数分别为dog和cat的方法
		bb.shout();
	}
}


class animal{
	public void shout() {
		System.out.print("zzzzzzzzz");
	}
}

class dog extends animal{
	public void shout() {
		System.out.print("wwwwwwww");
	}
}
class cat extends animal{
	public void shout() {
		System.out.print("mmmmmmmmmmm");
	}
}
相关标签: 多态