Java面向对象(继承)的理解
Java面向对象有三大特征:封装、继承、多态,对于三大特征我主要给大家分享一下我对继承理解
先了解一下继承的作用↓↓↓
Dog类
public class Dog {
/*
* 属性:类具备的特征
* 方法:类具备的行为
* */
//定义属性
public String name;//名字
public static int health;//健康状况
private int love;//亲密度
private String sex;//性别
//静态代码块:类在加载的时候自动执行
public String getName() {
return name;
}
//set访问器:进行赋值 写的权限
public void setName(String name) {
this.name = name;
}
public int getHealth() {
return health;
}
}
Penguin类
public class Penguin {
public String name;//名字
public static health;//健康状况
private int love;//亲密度
private String sex;//性别
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getHealth() {
return health;
}
上面两篇代码可以看出两个类里面都有相同的属性,存在重复代码,导致代码量大且臃肿,维护性不高,在后期修改代码的适合就需要修改很多代码,很容易出错,所以要从根本上解决这两则代码的问题,就需要继承
继承:减少代码的重复率 提高代码的重用性
public class Pet{//父类名
//定义共有的属性
public String name;//名字
public static health;//健康状况
private int love;//亲密度
private String sex;//性别
}
如何用子类继承父类:
public class 子类名 extends 父类名(){}
我们可以创建一个父类:宠物类,将子类中共有的属性和方法提取到父类当中,在子类只保存特有的属性和方法extends