1.什么是继承:
继承是从已有类中派生出新类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。
2.继承有什么特点:
1.单继承:类与类之间只能单继承,子类可以用父类的成员和方法,但是父类不能用子类的成员和方法;而且一个子类不能同时有两个父类。
2.继承关系具有传递性:列如类A有父类B,类B拥有父类C,则C也可以称为A的父类。
3.如何进行方法的重写:
1.方法名必须相同。
2.形参列表必须相同。
3.子类的方法的返回值类型应该比父类的返回值类型更大或相等。
4.子类方法抛出的异常类应该比父类抛出的异常类更小或相等。
5.子类的访问权限应该比父类方法访问权限更大或相等。
4.继承有什么好处:
1.增强了代码的复用性。
2.提高可维护性,降低了程序的耦合性。
3.简化了人们对事物的认识和描述,能清晰体现相关类间的层次关系。
5.类的继承格式:
class 父类{
}
class 子类 extends 父类 {
}
6.基本的继承代码(附代码):
package com.lenvov.www;
/**
* 鸟类
* @author lenovo
*
*/
public class Bird {
String color;
int age;
public void fly() {
System.out.println("飞啊飞啊我的骄傲放纵");
}
}
先定义一个鸟类(父类);
package com.lenvov.www;
/**
* 大雁类
* @author lenovo
*
*/
public class Dayan extends Bird {
double height;
double weigh;
public void fly() {
System.out.println("飞吧少年!");
}
}
再定义一个子类;
package com.lenvov.www;
/**
* 测试类
* @author ASUS
*
*/
public class Test1 {
public static void main(String[] args) {
Dayan b = new Dayan();
b.fly();
}
}
这是测试类;
输出最后的测试代码为:
飞吧少年!
如果想要输出父类中的方法在子类方法中加入super语句,如:
package com.lenvov.www;
/**
* 大雁类
* @author lenovo
*
*/
public class Dayan extends Bird {
double height;
double weigh;
public void fly() {
super.fly();
System.out.println("飞吧少年!");
}
}
这时候重新运行测试代码为:
飞啊飞啊我的骄傲放纵
飞吧少年!