zoukankan      html  css  js  c++  java
  • 1 请谈谈面向对象的三大特征?

    封装

    隐藏对象的属性和实现细节,仅对外公开接口,控制程序中属性的读取和修改的访问级别;

    封装就是将抽象得到的数据和行为相结合,形成一个有机的整体,也就是将数据和操作数据的源代码有机结合,形成 "类",其中属性和函数都是类的成员。

    封装的目的是:增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口,以特定的访问权限来使用类的成员。

    继承

    子类继承父类的特征和行为,使得子类具有父类的属性和方法;

    子类的创建可以增加新数据、新功能,可以继承父类的全部功能,但是不能选择性的继承父类的部分功能;

    继承是类与类之间的关系,不是对象与对象之间的关系。

    多态

    父类的引用指向子类对象;

    允许不同子类的对象对同一消息作出不同的响应,即同一消息可以根据发送对象的不同而采用不同的行为方式 (发送消息就是函数调用) 。

    多态的实现机制:动态绑定,指程序在运行期间会判断所引用对象的实际类型,根据其实际类型调用对应的方法。

    多态的作用:消除类型之间的耦合关系。

    多态的三个必要条件:

      1)有继承关系

      2)子类重写父类方法

      3)父类引用指向子类对象

    多态的好处:

      1)可替换性:多态对不同的子类对象都能正常调用相关方法;

      2)可扩充性:多态对代码具有可扩充性,增加新的子类不影响已存在类的特性的运行和操作;

      3)接口性:多态是父类向子类提供一个公共接口,由子类完善或覆盖它而实现的;

      4)灵活性:应用中不同类型的子类通过重写公共方法,体现了灵活多样的操作;

      5)简化性:多态简化了代码编写和修改的过程。

  • 相关阅读:
    centos8上添加sudoer用户
    centos平台scp通过密钥远程复制文件(免密登录)
    使用 TestNG 并发测试 ;
    maven 添加tomcat依赖
    maven Web项目中POM的配置信息
    找xpath好用的工具(比较少用,针对只能在IE上打开的网站)
    maven 实践 :管理依赖
    maven将依赖打入jar包
    maven scope含义的说明
    Maven编译打包出错:找不到符号
  • 原文地址:https://www.cnblogs.com/xilichenbokeyuan/p/14139347.html
Copyright © 2011-2022 走看看