• java中继承的介绍


    继承:

    生活中的继承:继承财产,钱不用自己挣,自己也能花!
    皇位继承:继承江山,江山不用自己打,继承过来也能坐。
    软件中的继承:继承代码,代码不用自己写,继承过来也能用。
    继承适用性:当多个类之间存在一个重复(共性)的代码时,且它们在概念上达到一致(is a),则使用继承来优化冗余重复的代码。
    继承的关键字: extends ,在类名的后面 加上当前关键字 后 然后再加上 要继承的父类名即可实现继承。
    1.父类/超类:所有子类共性的属性和行为!
    2.子类/派生类:存放自己的特有属性和行为!
    3.子类不仅仅能访问自己的内容,还可以访问父类中的内容。(继承过来就是自己有)
    4.父类不能够访问子类的内容(只可以访问自己定义的内容)
    5.继承具有传递性。
    6.继承具有单一性。子类只能找一个类来通过extends关键字实现继承(单一继承)

    泛化:从多个类中提取冗余代码到父类的过程 称之为泛化.
    class Person{ //人类   ----父类
        //属性
        String name;
        int age;
        char sex;
        //行为
        void eat(){
            
        }
        void sleep(){
            
        }
        
    }class Student extends Person{ //学生类
        //属性
        int stuId;
        //行为
        void study(){
            
        }
      
    }
    class Teacher extends Person{
        double salary;
        //行为
        void teach(){
            
        }}
    class Doctor extends Person{
        int level;//职称
        //行为
        void cut(){
           
        }
     
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40


    继承具有传递性:

    class 爷爷类{
        传家宝
    }
    class 父亲类 extends 爷爷类{
        传家宝
    }
    class 儿子类 extends 父亲类{
        传家宝
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    作业:分析当前项目,7个类之间存在类中都存在重复的属性!代码冗余! 在当前项目包新建一个父类(SeaObject) 海洋对象类。将7各类共性的属性和行为 提取到海洋对象类中!
    这7个类删掉重复的属性和行为 通过extends 继承 SeaObject。

    package cn.tedu.submarine;
    /**
     * 海洋对象类   -------7个类的父类!放这7个类共性的属性 和 行为!
     * */
    public class SeaObject {
        //属性
        int x;
        int y;
        int width;
        int height;
        int speed;//方法
        void step() {
            System.out.println("海洋对象在移动......");
        }}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
  • 相关阅读:
    (五)Alian 的 Spring Cloud DB Starter(自己写个starter)
    OpenCV-Mat类-图像表示
    小函数:Lambda表达式(Java篇)
    win11系统中nginx简单的代理配置
    git 版本管理
    好用合并工具安利!需要的来关注一下
    datagrip只导出表结构
    vue生命周期钩子函数
    幸福金龄会《金龄盛典》佛山赛区启动海选
    NX 1988 如何将组件转为部件
  • 原文地址:https://blog.csdn.net/qq_45520124/article/details/126734583