码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Java—封装、继承、多态


    文章目录

    • 三大特性:
    • 封装
    • 继承
    • 多态
      • 多态作用:
      • 多态实现的必要条件:
        • 注:
    • 动态绑定静态绑定区别:
    • 对多态的理解?

    ———————————————————————————

    三大特性:

    ①:封装 ②:继承 ③:多态

    封装

    • 封装就是将一个对象的属性隐藏起来,不允许外界直接访问,但是可以通过调用指定的方法进行访问(name域只能通过,get set方法访问) 好处:1.隐藏内部实现,提高安全性;2.具有一定的解耦性(因为暴露给外界的只是它的访问方法,可以在不影响使用的情况下改变类的内部结构)

    继承

    • 继承就是子类继承父类的方法和属性,而且可以拥有自己的方法,提高了代码的重用(对扩展是开放的),私有属性不能继承,但是可以通过子类继承父类的方法来访问父类的私有属性。

    多态

    • 同一个行为具有不同表现形式或形态的能力,就是父类引用指向子类对象

    多态作用:

    主要用来实现动态性,提高程序的灵活性和扩展性

    多态实现的必要条件:

    要有类与类的继承关系,子类必须继承父类
    必须要有重写的方法
    父类引用指向子类对象

    注:

    面向过程注重过程,就是要分析出解决问题需要的步骤,然后按步骤一步一步实现,类调用时需要实例化,开销比较大,性能比面向对象高。

    面向对象最主要的就是把构成问题的事务分解成各个对象,把对象封装成方法,然后调用方法,优点就是易维护,易扩展,提高了可重用性。
    动态绑定是指:在程序运行过程中,根据具体的实例对象才能具体确定是哪个方法。

    动态绑定静态绑定区别:

    不可以单独实例化(例如抽象类有一个name属性,子类继承后实例化相当于对象中包含着一个父类对象),即依附于自己的子类实例化

    程序在JVM运行过程中,会把类的类型信息、static属性和方法、final常量等元数据加载到方法区,这些在类被加载时就已经知道,不需对象的创建就能访问的,就是静态绑定的内容;需要等对象创建出来,使用时根据堆中的实例对象的类型才进行取用的就是动态绑定的内容。

    对多态的理解?

    ​ 多态就是父类引用指向子类对象,调用引用变量的方法时,总是表现出子类对象方法的行为,这将出现,调用相同类型的变量的方法,表现出不同的特征,这就是多态。

    1.派生类的功能可以被基类的方法或引用变量所调用,这叫向后兼容,可以提高可扩充性和可维护性。
    2.应用程序不必为每一个派生类编写功能调用,只需要对抽象基类进行处理即可。大大提高程序的可复用性。

    应用场景

    service多个实现类

  • 相关阅读:
    ★C/C++语言期末课程设计★——万年历显示系统(详细报告+源代码+详细注释)
    【Django】REST_Framework框架——GenericAPIView类源码解析
    李春葆、严蔚敏关于KMP算法的next数组值差1
    【程序的编译和预处理】
    python+pyautogui—PC端自动化(二)键盘鼠标及对话框操作
    Rethinking Image Aesthetics Assessment:Models,Datasets and Benchmarks
    Spring framework day 03:Spring 整合 事务管理
    【Redis】Hash 哈希内部编码方式
    Git使用指南
    MySQL 有哪些常见的面试题
  • 原文地址:https://blog.csdn.net/weixin_53233197/article/details/128168302
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号