一、定义
例:学生、老师、员工————》人类
1.将项目内分支收拢,提高代码的复用性,不用重复利用,如上例可得将三种都做为人类的共同点写下重复利用;
(一)学生类:Student:
属性:姓名,年龄,身高,学生编号
方法:吃饭,睡觉,喊叫,学习
(二)教师类:Teacher:
属性:姓名,年龄,身高,教师编号
方法:吃饭,睡觉,喊叫,教学
共同的东西:
(三)人类:
属性:姓名,年龄,身高
方法:吃饭,睡觉,喊叫
(四)学生类:Student:
属性:学生编号
方法:学习
(五)教师类:Teacher:
属性:教师编号
方法:教学
·其中人类所具有共同的特性称为:----》父类
·学生,教师的分支称为:----》子类
二、代码解释
(1)先写父类,再写子类:
父类:人类 Person
子类:学生类 Student
继承 封装,两者经常一起使用
(2)父类代码:
public class Person {
//属性:66
private int age;
private String name;
private double height;
//提供setter/getter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
//方法:
public void eat(){
System.out.println("可以吃饭。。。");
}
public void sleep(){
System.out.println("可以睡觉。");
}
}
(3)子类代码:
public class Student extends Person {//子类Student 继承 父类Person
//属性;
private int sno;//学号
public int getSno() {
return sno;
}
public void setSno(int sno) {
this.sno = sno;
}
//方法:
public void study(){
System.out.println("学生可以学习");
}
}
(4)主函数:
public class Test {
public static void main(String[] args) {
//创建子类Student的对象
Student s = new Student();
s.setSno(1001);
s.setAge(18);
s.setName("菲菲");
s.setHeight(180.4);
System.out.println("学生名字为:"+s.getName()+",学生的年龄为:"+s.getAge());
//访问方法:
s.study();
s.eat();
s.sleep();
}
}
三、继承关系
(1)父类/基类/超类
子类/派生类
子类继承父类一定在合理的范围进行继承的 子类 extends 父类
(3)父类private修饰的内容,子类也继承过来了。
(4)一个父类可以有多个子类。
(5)一个子类只能有一个直接父类。
但是可以间接的继承自其它类。
四、总结
(1)继承关系 :
父类/基类/超类
子类/派生类
子类继承父类一定在合理的范围进行继承的 子类 extends 父类
(2)继承的好处:
1.提高了代码的复用性,父类定义的内容,子类可以直接拿过来用就可以了,不用代码上反复重复定义了
2.便于代码的扩展
3.为了以后多态的使用。是多态的前提。
(3)继承具有传递性
Student --》继承自 Person ---》继承自Object
Object类是所有类的根基父类。
所有的类都直接或者间接的继承自Object。
有问题可以私信讨论,共同进步 doge