老黑讲Java之面向对象开发——方法的重写

时间:2024-10-11 22:21:51

1、温故知新 前段时间老黑介绍了面向对象三大特征之一——继承,这次让我们简单温习一下吧。 佛家有云,有因必有果,那么继承的诞生究竟有什么意义呢,我们可以通过结果来推测因由,现在看看继承的特点。 首先,继承的机制渗入Java编程语言体系结构,俗话说,Java一切皆继承。这样程序员只要了解父类,对于其所有子类的调用心里就可以明白一二了。 其次,继承可以减少开发时间成本,减少无意义开发,代码便于管理。假如我们在负责一个中大型项目时,这时项目架构师的作用尤为重要,选择适合客户经理的业务需求的框架,还有最重要的是处理好父类,剩下的就可以让码农继承开发去了。 继承还有许多优点不一一赘言,因为继承机制好,所以有存在的意义,更值得我们学习。

2、继承的泛化过程和extends关键字 将重复的代码提取出来,放在一个公共类中这个过程称为泛化,通常这个过程在设计初期完成。 使用extends关键字,使得子类继承父类,伪代码如下: class 子类 extends 父类{ }

3、方法的重写 子类继承父类后,当然子类可以继承父类的方法,还有更重要的一点,子类可以重写父类的方法,即子类的方法名和参数列表与父类的方法如出一辙,但菱诎逭幂方法的实现不同(相同的话没有必要重写哦>_<'')。 接下来重点来了,请认真理解,无论父类型还是子类的引用调用子类重写之后的方法,JVM运行的都是子类重写的方法。明白这句话,方法的重写你就学妥了,先插播一段代码如下: 父类代码如下: public class Father { private String name; private String age; private String gender; public void sayRole() { System.out.println("我是爸爸"); } } 子类代码如下: public class Son extends Father { public void sayRole() { System.out.println("我是儿子"); } public static void main(String[] args) { Father father = new Son(); Son son = new Son(); father.sayRole(); son.sayRole(); } } 运行结果是: 我是儿子 我是儿子 解析:从结果看来,无论是子类的引用还是父类的引用调用重写之后的方法,运行的方法都是子类重写后的方法。实际上,方法的重载是运行期的过程,java在运行后,才会创建对象,根据对象调用相应的方法。

老黑讲Java之面向对象开发——方法的重写
老黑讲Java之面向对象开发——方法的重写
老黑讲Java之面向对象开发——方法的重写
© 手抄报圈