1、继承:从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类);得到继承信息的类被称为子类(派生类)。继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段。

子类拥有父类一切非私有的属性和方法。

面向对象的基本特征

2、封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。我们在类中编写的方法就是对实现细节的一种封装,我们编写一个类就是对数据和数据操作的封装。封装就是隐藏一切可隐藏的东西,只向外界提供最简单的接口。

把过程和数据包围起来,对数据的访问只能通过已定义的界面。

3、多态性:允许不同的子类型的对象对同一信息作出不同的响应。方法重载实现的是编译时的多态(前绑定),方法重写实现运行时的多态性(后绑定)。实现多态需要:

3.1、方法重写:子类继承父类并冲洗父类中已有的或抽象的方法

3.2、对象造型:用父类型引用子类型对象,这样同样的引用调用同样的方法就会根据子类对象的不同而表现出不同的行为。

同一种事物的不同种表现形式。

4、抽象性:将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象。抽象只关注对象有哪些属性和行为,并不关注行为的细节。

抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。

什么是面向对象_11、面向对象的基本特征是什么相关推荐

  1. 面向对象的三个基本特征 和 五种设计原则

    面向对象的三个基本特征 和 五种设计原则 来源: http://blog.csdn.net/cancan8538/article/details/8057095 一.三个基本特征 面向对象的三个基本特 ...

  2. 面向对象的4个基本特征

    上个周末霸笔大唐移动的应用程序软件工程师试题,有一道面向对象的4个特征,以前都是接触的三个,怎么多出了一个?原来就是抽象性... 面向对象的4个基本特征 在上述面向对象的基本概念基础之上,不可避免地要 ...

  3. 三、Java面向对象编程有四个特征

    面向对象编程有四个特征:抽象,封装,继承,多态. 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者 对象操作,对不可信的进行信息隐藏. 继承是指使用现有类的所有功能, ...

  4. [转]面向对象的三个基本特征

    面向对象的三个基本特征(讲解) 面向对象的三个基本特征是:封装.继承.多态. 封装 封装最好理解了.封装是面向对象的特征之一,是对象和类概念的主要特性. 封装,也就是把客观事物封装成抽象的类,并且类可 ...

  5. 什么是面向过程?什么是面向对象?面向对象的三大基本特征是什么?

    一.什么是面向过程? 面向过程是一种以过程为中心的编程思想,其原理就是将问题分解成一个一个详细的步骤,然后通过函数实现每一个步骤,并依次调用. 面向过程我们所关心的是解决一个问题的步骤,举个例子,汽车 ...

  6. 面向对象的三个基本特征

    面向对象的三个基本特征 面向对象的三个基本特征是:封装.继承.多态. 封装 封装最好理解了.封装是面向对象的特征之一,是对象和类概念的主要特性. 封装,也就是把客观事物封装成抽象的类,并且类可以把自己 ...

  7. 什么是面向对象?面向对象的特征?面向对象和面向过程的区别?

    什么是面向对象? 面向对象是一种思想,世间万物都可以看做一个对象,这里只讨论面向对象编程(OOP), Java 是一个支持并发.基于类和面向对象的计算机编程语言. 面向对象软件开发具有以下优点: 代码 ...

  8. 面向对象的三个基本特征是:封装、继承、多态及其五大原则

    阅读数:634 面向对象的三个基本特征是:封装.继承.多态 封装 封装最好理解了.封装是面向对象的特征之一,是对象和类概念的主要特性. 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方 ...

  9. 面向对象:面向对象程序设计

    整理自网络. OO(Object–Oriented )面向对象 OO方法(Object-Oriented Method,面向对象方法,面向对象的方法)是一种把面向对象的思想应用于软件开发过程中,指导开 ...

  10. Python - - 面向对象 - - 初始面向对象

    目录 面向过程vs面向对象 初识面向对象 类的相关知识 对象的相关知识 对象之间的交互 类命名空间与对象.实例的命名空间 类的组合用法 初识面向对象小结 面向对象的三大特性 继承 多态 封装 面向对象 ...

最新文章

  1. 输出值(4)输出值的应用
  2. mingw w64 v8.0.0_使用Visual Studio Code和MinGW编译运行C++代码
  3. HTML连载14-文字属性补充简写
  4. php excel 读取日期问题
  5. PUCCH Format
  6. deque与vector的主要区别
  7. 深入理解static关键字
  8. 字符串获取类、封装检测数字的方法
  9. java虚拟机之三--理解Java虚拟机体系结构
  10. C++还有前景吗?做服务器这一块可以吗?
  11. 你知道这些使用Linux虚拟桌面的益处吗?
  12. php 正则不贪婪,正则表达式之 贪婪与非贪婪模式详解(概述)
  13. Luogu 3939 数颜色
  14. arcgis 做凹凸起伏的分类图
  15. web开发详解,学习web前端开发的网站
  16. 电脑重装系统Win11托盘图标不显示如何解决
  17. CSDN高校——C1任务01—修改游戏存档
  18. 为什么睡好觉如此重要
  19. c# 自动安装X509证书\windows安装X509证书\端口绑定ssl\服务端开启ssl
  20. 短视频素材在哪找?3大素材库,3000+最火视频素材免费用

热门文章

  1. 2017.11.24
  2. Java VisualVM无法检测到本地java程序 的 解决办法
  3. 最新iOS面试必看题视频教程(附大神简历要素)
  4. [转载] 七龙珠第一部——第084话 天下第一高手
  5. 华为hg-526拨号加路由破解简介
  6. idea java文件显示j_IDEA 快捷使用指南
  7. glassfish启动后不能进入部署页面_Spring Boot 热部署
  8. win10电脑浏览器哪个好_电脑WinXP、Win7和Win10,哪个操作系统最好用?
  9. Linux最大能创建多少用户,如何在Linux中创建多个用户帐户?
  10. java和seo学那个_Java和PHP编程语言哪个比较厉害?