好处:
(1)提高了代码的复用性
(2)提高了代码的可维护性
(3)是类中多态的前提
弊端:
(1)提高了代码的耦合性
(2)耦合性:事物与事物之间互相影响的程度
子类能够继承父类除去构造方法外的成员方法以及成员方法,同时,子类可以重写父类的成员方法。父类的一些私有成员变量不能直接访问,需要通过父类的公共访问方式进行访问。
重写:方法名相同,参数列表不变,实现内容不同
示例:
package com.bxw.demo.demo05;
public class extent继承 {
public static void main(String[] args) {
Fu fu = new Fu("jack",23);
fu.getAll();
Zi zi = new Zi("tom",24,7);
zi.getAll();
}
}
class Fu{
private String name;
int age;
public Fu() {
}
public Fu(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void getAll(){
System.out.println("name:" + this.name + " age" + this.age);
}
}
class Zi extends Fu{
private int id;
public Zi() {
}
public Zi(int id) {
this.id = id;
}
public Zi(String name, int age, int id) {
super(name, age);
this.id = id;
}
// 重写父类中的方法
@Override
public void getAll() {
System.out.println("name:" + super.getName() + " age:" + super.age + " id:" + this.id);
// 这里强调一个this的方式
System.out.println(this.getName());// this关键之后面可以访问父类的共有方法。
// this是访问本类的成员,当时子类继承了父类的成员,因此有一部分也相当于是本类的了
// 因此使用this也可以访问调用父类公共的成员
}
}
继承的特点:支持单继承,不支持多继承,支持多层继承