zoukankan      html  css  js  c++  java
  • 复习面向对象--继承,重写,重载,抽象详解

    继承:在现有的基础上去构建一个新的类。构建出来的新类被称作子类,现有类称作父类,子类会自动拥有父类所有。

    继承的优点:

      提高了代码的可维护性;

      提高了代码的复用性;

      让类与类之间产生了继承关系

    继承的弊端:

      类与类之间的耦合度过高;(接口可以用于解耦和)

    继承的特点:

      java中只能够单继承,不能多继承,可以多层继承;

      所有类都直接或者间接的继承了Object类,Object类称为祖宗类;

    继承的注意事项:

      使用关键字extends让类与类之间产生继承关系;

      父类私有的成员,子类不能继承;

      继承不可以随便继承,要符合什么是什么(苹果是水果的关系)

    继承中的成员变量的关系:

      不同名称的变量:

        子类直接继承使用;

      相同名称的变量:

        默认访问的是子类自己的成员方法(this.),如果想访问父类的同名方法,请使用super.成员方法();

        super用来表示当前对象中包含的父类对象空间的引用;

        调用父类的成员变量:super.成员变量

        调用父类的成员方法:super.成员方法()

    方法的重写(override):在子父类中出现了方法声明相同的情况,也叫做方法覆盖;

      方法重写注意事项:

        子类的方法声明要与父类相同;

        子类要重写方法的方法,方法的权限修饰符不能比父类的更低(>=)

        父类私有的方法,子类不能够进行方法的重写;

    方法重载(ovreload):指在同一个类中,多个方法名称相同,他们的参数列表不同(个数不同,数据类型不同);

    抽象:

      抽象方法:方法只有声明部分,没有方法体;

      抽象类:包含抽象方法的类,一定是抽象类;abstract修饰;

      抽象类的特点:

        1.抽象类与抽象方法都必须使用abstract来修饰;

        2.抽象类不能直接创建对象;

        3.抽象类中可以有抽象方法,也可以没有抽象方法(不会让其他人直接创建该类对象)

        4.抽象类的子类:实现了抽象方法的具体类、抽象类;

      

  • 相关阅读:
    【JS】限制两个或多个单选框最多只能选择一个
    Markdown基本语法
    【thinkphp5】 分页样式修改
    Vscode 修改为中文语言
    【linux】Crontab 定时任务 使用实例
    【微信开发】 模板消息发送
    二维数组转化为字符串,中间用,隔开
    【golang】 go语言之环境搭建+ 第一个go语言程序
    【PHPstudy】安装Composer
    【LNMP】基于阿里云的https免费证书配置
  • 原文地址:https://www.cnblogs.com/yikuan-919/p/9532474.html
Copyright © 2011-2022 走看看