java多态的理解
首先来看下这副图
·下面用方法的重载来演示一下
声明一下:跟方法的重载有点类是,但重点两者不是同一个关系
在调用一个方法时,可能会有很多功能,如果一个功能定义成一种方法(功能不同,方法名不同)在调用的时候就非常不方便,需要去记很多方法
下面举个例子(只是举个列子)
如上代码,看1和2调用的区别,这里只是举个例子,再来看下面的图
这样是不是便于记忆便于使用
方法重载的总结:
方法的重载
1.同一个类中多个方法之间的关系
2.方法名相同
3.参数列表不相同(参数类型,顺序,个数)
4.只看上面3点和其它一切都没有关系了(个修饰符,返回值类型统统都没有关系)
总结: 如果在一个类中存在多个名字一样的方法而编译不报错,那么他们就是重载
多态的总结
好处:提高了代码的扩展性。
弊端:1.前期建立父类的引用虽然可以接收后期所有该类的子类对象。
2.但是只能使用父类中的功能,不能使用子类中的特有功能,
3.因为前期的程序无法知道后期的子类的特有内容的。
4.但是前期的程序可以使用子类覆盖了父类的方法的内容。
前提:
1,必须存在着继承关系。
2,通常要有覆盖操作。