• 面向对象进阶(static&继承)


     今日分享:static   and  继承

     static:

    staic是修饰符 可以修饰方法和变量 

    变量:

    被static修饰的变量称为静态变量

    特点 该类的所有对象都共享同一个静态变量;不属于对象属于类;随着类的加载而加载,优先于对象存在。

    调用的方法:类名调用(推荐);对象名调用

    方法:

    被static修饰的方法称为静态方法

    特点静态方法多用于测试类或工具类;javabean类很少使用。

    调用方法跟变量一样。

    小tips

    工具类是指将一个功能提升到一个类中当作工具使用,工具类的写法:构造方法必须私有化,因为我们使用不到这个工具类的对;方法必须用static修饰。

    static的注意事项:

    静态方法中,只能访问静态;

    非静态方法中可以访问所有;

    静态方法中没有this关键字;(因为静态是属于类,不属于对象。this无意义)

    继承: 

    继承是面向对象三大特性之一

    继承就是俩个类之间存在的一种关系。当类与类之间存在相同(共性)的内容,并满足子类是父类的一种时就可以使用继承

    使用继承的好处:可以把子类中重复的代码抽取到父类,节约代码,提高代码的复用性;

    子类可以在父类的基础上添加功能,使子类更强大;

    特点:java只支持单继承,不支持多继承,但支持多层继承。(就是你爸爸生你,你生你儿子这样子,自己想象);java中所有的类都直接或间接继承于Object类;

    子类能从父类中继承的内容:

    构造方法不能继承;

    成员方法都能继承,私有变量不能直接使用,通过get/set;

    成员方法只有虚方法表里的方法能够继承;(虚方法表里的方法必须非private非static非final);

    继承中访问成员变量和成员方法的特点:

    成员变量的访问特点:就近原则

    先在局部位置找,找不到到本类成员位置找、父类成员位置找逐级往上。

    成员方法的访问特点:

    this调用:就近原则

    super调用:直接找父类

    方法重写:

    方法重写就是在继承体系中,子类出现了和父类中一模一样方法声明,我们就称子类这个方法是重写的;

    方法的重写建议加上@Override注解,可以检验重写是否正确是否正确,同时可读性好;

    重写的方法尽量跟父类保持一致,只有虚方法表里的方法才可以重写;

    方法重写就是覆盖虚方法表中的方法;

    继承中的构造方法和this、super关键字:

    父类的构造方法不会被继承

    子类中的构造方法默认都会先访问父类的无参构造,再执行自己;

    因为有可能用到父类的数据,所以要先初始化父类;

    子类虽然不可以继承父类的构造方法,但可以通过super关键字进行调用;

    this、super使用总结:

    this:可以理解成一个变量表示当前方法调用者的地址值。

    super:代表父类的存储空间

    栗题:

    https://download.csdn.net/download/weixin_65861329/86892533

  • 相关阅读:
    题解:P9426 [蓝桥杯 2023 国 B] 抓娃娃
    Vue+Elementui历史导航标签实现
    【Taro3踩坑日记】不存在全局配置文件:C:\Users\TYW\.taro-global-config\index.json
    ceph简介
    Redis入门讲解(介绍、安装、常用命令)
    ubuntu下使用docker命令行
    Java的序列化和反序列化
    NgRx不使用effect,怎样将数据存入store
    辅助驾驶功能开发-功能规范篇(25)-1-全景影像AVM规范
    易基因课程回顾|表观遗传学和表观育种在品种改良中的应用研究
  • 原文地址:https://www.cnblogs.com/suwejie/p/16889850.html