继承性
1、继承的概念:
子类对象从父类获取属性和方法的过程。
类似于生活中子继父业。
2、语法格式:
[修饰符] class子类名 extends父类名
修饰符:可选,用于指定类的访问权限,可选值为public、abstract和final。
class 子类名:必选,用于指定子类的名称,类名必须是合法的java标识符。
extends父类名:必选,用于指定要定义的子类继承于哪个父类。
3.继承类型:
类的继承是单一继承,一个子类只能拥有一个父类。
4、关键字:
1)extends关键字:
extends只能继承一个类。
2)implements关键字:
多重继承:可以同时继承多个接口。
3)this关键字:
this关键字必须放在非静态方法里面,this可以在本类构造方法中this。
4)super关键字:
super不能出现在静态方法中,super可以在子类构造方法中super.父类方法,来调用父类方法。
5)final关键字:
final修饰属性、局部变量—值不能被修改;
final修饰类—不能被继承;
final修饰方法—不能被子类重写.
5、例子:
公共类:
public class Animal {
public void name() {
System.out.println("我的名字叫:");
}
}
这个Animal类就可以作为一个父类,然后老鹰类和老虎类继承这个类之后,就具有父类当中的属性和方法,子类就不会存在重复的代码,维护性也提高,代码也更加简洁,提高代码的复用性(复用性主要是可以多次使用,不用再多次写同样的代码) 。
老虎类:
public class Tiger extends Animal{
public void run() {
System.out.println("老虎,我跑得快。");
}
}
这个老虎类继承了父类Animal类,他就能实现父类中的name()方法。
老鹰类:
public class Eagle extends Animal{
public void fly() {
System.out.println("老鹰,我飞得高。");
}
}
同样老鹰类继承了父类Animal类,他就能实现父类中的name()方法。
测试类:
public class TestA {
public static void main(String[] args) {
Tiger tiger = new Tiger();
tiger.eat();
tiger.run();
System.out.print("\n"); //换行
Eagle eagle = new Eagle();
eagle.eat();
eagle.fly();
}
}
输出结果:
我的名字叫:
老虎,我跑得快。
我的名字叫:
老鹰,我飞得高。
6、继承的特性:
1)子类拥有父类非private的属性和方法。
2)子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。
3)子类可以用自己的方式实现父类的方法。
7、继承的作用:
实现代码重用, 复用。
面试题:
(答案见下一篇博客面试题部分)
无
上篇面试题答案:
无