多态之类的继承:
首先,从一个问题入手:为什么需要继承?假如你已经去创建一个类A,但当你需要再创建一个类B,并且类B要有类A的所有或者大部分的属性和方法,没有弄明白类的继承之前,你就只能自己再敲一遍类A的代码了(更快一点的就是不敲,直接复制粘贴)。你敲着敲着,可能一股无名业火涌上心头,烦躁难当。这时候,就是“类的继承”发挥作用的时候了。前面类A我们成为"父类",类B我们称为“子类”,通过继承,子类就能名正言顺地使用父类的所有属性和方法。(以上只是针对“public ”型的属性和方法 ,注意“访问修饰符”和“是否同包”对子类的限制作用)
现在,知道为什么需要继承了吧:
1.减少开发的时间,降低代码的冗余。
2.继承是用来完善面向对象的编程思想。
让我们感谢java鼻祖吧!因为他们一直都在为我们考虑!!
继承的语法格式
访问修饰符 class 子类名 extends 父类名{
}
多态之方法的重载:
首先要明白,方法的重载是对一个类来说的。在一个类里面,允许出现多个方法名相同的方法,但前提是这些方法的参数列表都必须互不相同。
参数列表的不同有以下几个方面:
1.参数的个数不同
2.参数的个数相同,参数的类型不同
3.参数的个数相同,参数的顺序不同
如:原方法--->public void Way(float x,int y){}
重载1--->public void Way(int x,int y,int m,int n){}
重载2--->public void Way(int x,int y){}
重载3--->public vod Way(int x,float y){}
那调用方法时,怎么知道用的是哪个方法呢?没错,就是根据你说传人的参数(即参数列表的属性),编译器能够根据你传入的参数判断调用哪个方法。
多态之方法的重写:
方法的重写是对类的继承而言的。子类中可以创建一个方法,这个方法的访问修饰符、返回值、方法名、参数列表都与父类的方法不同,唯一不同的是子类的这个方法的方法体与父类的不同。当用子类的对象调用方法时,首先调用的是子类重写的方法,父类的对应的方法会被屏蔽。实现方法重写,在调用的过程中,会优先调用子类的方法,如果子类没有该方法,则调用父类的方法。
实现重写,子类中定义的方法,必须在父类中存在,如果父类中不存在该方法,那么就是
子类自己定义的一个新的方法。 子类要实现重写,那么方法的返回值类型,方法名,参数个数以及参数类型都必须和父类的完全 相同,子类的唯一能修改的地方是访问修饰符,但是,子类的访问修饰符只能比父类的大,不能比父类的小。
大--->小
public --> protected --> private
多态之自动转型:
要实现自动转型必须存在继承的关系。
自动转型只能用于子类和父类之间的。
自动转型常用格式:父类名 对象名 = new 子类构造方法(); (向上转型)
自动转型后对象就不能够调用子类独特的方法与属性,这看来似乎不好,但是这也是个优点,可以更好地体现java的编程思想,让对象对方法的和属性的使用更加的规范化。
分享到:
相关推荐
java多态的基础知识,你可能了解,但是如何使用?内附例子。究竟如何实现,帮你学习基础。
课件文档中详解了C#多态的含义以及运用,列举了多个代码案例,能使初学者更好理解并学会使用多态
类的封装、继承和多态3种特性构成了面向对象程序设计思想的基础,通过这些基础可以最大程度地实现代码的重用,有效地降低了软件的复杂性。通过多态可以逼真地描述客观世界,使得应用程序可以完美地满足用户的要求。...
多态 多态的优缺点在不同的编程场景中不同的适用性
类的定义 假如要定义一个类 Point,表示二维的坐标点: # point.py class Point: def __init__(self, x=0, y=0): self.x, self.y = x, y 最最基本的就是 __init__ 方法,相当于 C++ / Java 的构造函数。...
C#基础继承和多态详解,需要的朋友可以参考一下
下面小编就为大家带来一篇从汇编看c++中的多态详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Java多态的讲解
利用大量代码讲解java的多态,让你更容易理解和应用。
主要介绍了C++/java 继承类的多态详解及实例代码的相关资料,需要的朋友可以参考下
JAVA多态图文详解ppt,详细通过各种举例介绍JAVA多态的ppt
本文实例讲述了Python面向对象编程之继承与多态。分享给大家供大家参考,具体如下: Python 类的继承 在OOP(Object Oriented Programming)程序设计中,当我们定义一个class的时候,可以从某个现有的class 继承,新...
主要介绍了Python面向对象之接口、抽象类与多态,结合实例形式详细分析了Python面向对象中接口、抽象类及多态的概念、用法及相关操作注意事项,需要的朋友可以参考下
主要介绍了Python3.5面向对象程序设计之类的继承和多态,结合实例形式详细分析了Python3.5面向对象程序设计中类的继承与多态常见用法及相关注意事项,需要的朋友可以参考下