目录
方法的覆盖是指子类中定义一个方法,并且这个方法的名字,返回类型,参数列表与父类继承的方法完全相同。
一.概述
面向对象程序设计的三大原则是封装性,继承性和多态性。继承性是子类自动共享父类的数据和方法的机制,它是由类的派生功能体现的。继承具有传递性,使得一个类可以继承另一个类的属性和方法,这样通过抽象出共同的属性和方法组成新的类,便于代码的复用。而多态是指不同类型的对象调用相同的方法时产生不同的行为 。当对象接收到调用方法的消息时,根据该对象所属的类,动态选用在该类中指定要实现的算法。
二.继承
2.1 继承的概述
猫,狗,鸟都是动物的一种,分别具有同一样的特征。例如:名字,年龄等。亦拥有同样的行为,如吃这个动作。当然,每种不同的动物也有自己的独特的特征,这里就不一一列举了。
在面向对象的程序设计中该怎样描述现实世界的这种状况呐?这就用到了继承的概念。
所谓继承,就是从已有的类中衍生出新的类,新的类具有已有类的数据属性和行为,并能扩展新的能力。像动物这样被继承的类,我们称为父类,基类或超类,对于像猫和狗这样的类,我们称为子类,派生类。和现实生活中的儿子继承父亲的财产类似,子类也会继承父亲的属性和方法,已达到代码重用的效果。
2.2继承的语法规则
.使用extends指定父类
.java中一个字类只能继承一个父亲
.子类会继承父类所有的public属性和方法
.对于父亲的private的属性和方法,子类中是无法访问的
2.3代码示例
public class Animal{
public String name ;
pub;ic int age;
public Aniaml (String name,int age){
this.name = name;
this.age = age;
}
public void eat(String foood){
System.out.ptintln(this.name + "正在吃" + food);
}
}
//子类Cat
class Cat extends Animal{
public Cat(String name,int age){
//使用super关键字调用父类的构造方法.
super(name,age);
}
public void eat(String food){
System.out.println("