位置: 编程技术 - 正文

面向对象三大基本特性,五大基本原则(面向对象三大基本特性)

编辑:rootadmin
作者:Leo Chin出处:

推荐整理分享面向对象三大基本特性,五大基本原则(面向对象三大基本特性),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:面向对象的三大原则是什么,面向对象三大基本特性,面向对象三大基本特性,五大基本原则,面向对象三大基本特征,面向对象三大基本特征,面向对象三大基石,面向对象三大基本特征,面向对象三大基本原则,内容如对您有帮助,希望把文章链接给更多的朋友!

所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。封装是面向对象的特征之一,是对象和类概念的主要特性。 简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体。在一个对象内部,某些代码或某些数据可以是私有的,不能被外界访问。通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。

所谓继承是指可以让某个类型的对象获得另一个类型的对象的属性的方法。它支持按级分类的概念。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。 通过继承创建的新类称为“子类”或“派生类”,被继承的类称为“基类”、“父类”或“超类”。继承的过程,就是从一般到特殊的过程。要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。继承概念的实现方式有二类:实现继承与接口继承。实现继承是指直接使用基类的属性和方法而无需额外编码的能力;接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力;

面向对象三大基本特性,五大基本原则(面向对象三大基本特性)

所谓多态就是指一个类实例的相同方法在不同情形有不同表现形式。多态机制使具有不同内部结构的对象可以共享相同的外部接口。这意味着,虽然针对不同对象的具体操作不同,但通过一个公共的类,它们(那些操作)可以通过相同的方式予以调用。

五大基本原则 单一职责原则SRP(Single Responsibility Principle)是指一个类的功能要单一,不能包罗万象。如同一个人一样,分配的工作不能太多,否则一天到晚虽然忙忙碌碌的,但效率却高不起来。开放封闭原则OCP(Open-Close Principle) 一个模块在扩展性方面应该是开放的而在更改性方面应该是封闭的。比如:一个网络模块,原来只服务端功能,而现在要加入客户端功能,那么应当在不用修改服务端功能代码的前提下,就能够增加客户端功能的实现代码,这要求在设计之初,就应当将服务端和客户端分开,公共部分抽象出来。替换原则(the Liskov Substitution Principle LSP) 子类应当可以替换父类并出现在父类能够出现的任何地方。比如:公司搞年度晚会,所有员工可以参加抽奖,那么不管是老员工还是新员工,也不管是总部员工还是外派员工,都应当可以参加抽奖,否则这公司就不和谐了。依赖原则(the Dependency Inversion Principle DIP) 具体依赖抽象,上层依赖下层。假设B是较A低的模块,但B需要使用到A的功能,这个时候,B不应当直接使用A中的具体类: 而应当由B定义一抽象接口,并由A来实现这个抽象接口,B只使用这个抽象接口:这样就达到了依赖倒置的目的,B也解除了对A的依赖,反过来是A依赖于B定义的抽象接口。通过上层模块难以避免依赖下层模块,假如B也直接依赖A的实现,那么就可能造成循环依赖。一个常见的问题就是编译A模块时需要直接包含到B模块的cpp文件,而编译B时同样要直接包含到A的cpp文件。

接口分离原则(the Interface Segregation Principle ISP) 模块间要通过抽象接口隔离开,而不是通过具体的类强耦合起来

Android短信发送和接收流程源码分析 1.发送短信的源代码如下:publicvoidsendSMS(StringphoneNumber,Stringmessage){//获取短信管理器android.telephony.SmsManagersmsManager=android.telephony.SmsManager.getDefault();//拆分短

Android布局文件layout.xml的一些属性值 第一类:属性true或者falseandroid:layout_centerHrizontal水平居中android:layout_centerVertical垂直居中android:layout_centerInparent相对于父元素完全居中android:layout_alignParen

Android实战简易教程-第十二枪(ViewFlipper实现幻灯效果) 直接看代码1.MainActivity.java:packageorg.yayun.demo;importandroid.app.Activity;importandroid.os.Bundle;importandroid.view.GestureDetector;importandroid.view.MotionEvent;importandroid.view.ViewGro

标签: 面向对象三大基本特性

本文链接地址:https://www.jiuchutong.com/biancheng/385151.html 转载请保留说明!

上一篇:Android设计模式--原型模式(android设计模式书籍)

下一篇:Android短信发送和接收流程源码分析(android 发短信)

  • 接受捐赠的增值税处理
  • 月末结存材料的实际成本例题
  • 报销金额大于发票金额几毛钱
  • 社保税局代缴
  • 税金及附加包括什么
  • 小企业会计准则以前年度损益调整
  • 外贸企业一般纳税人申报
  • 名义股东转让股份侵权
  • 当月报废生产设备一台,原价80万元
  • 企业购买扶贫物资怎么入账
  • 企业认购普通股100万股作为交易性金融资产管理
  • 契税与印花税能抵扣吗
  • 蔬菜营销方案案例范文
  • 企业所得税递增是什么意思
  • 快速查看财务费用借贷有误的方法
  • 小规模印花税减免性质代码怎么填
  • 政策性搬迁的会计实用报告
  • 门诊医保报销流程详细步骤
  • 企业扶贫有什么优惠政策
  • 个人所得税到年底能不能退回来
  • 其他应付款付款后分录
  • 鼠标灯亮但是鼠标失灵
  • 汇算清缴无形资产摊销填哪里
  • 坏老狼告诉我们什么道理
  • 应收账款周转天数减少说明什么
  • php实现文件下载功能
  • thinkphp import
  • php实现购物车功能的方法
  • 会计记账的内容
  • 黑沙滩是什么意思
  • zend框架教程
  • php错误和异常
  • php 命名空间 通俗易懂
  • vue-router导航守卫
  • 违约赔偿金要交税吗
  • 出租固定资产的租金收入
  • php 引入
  • 外企研发中心
  • 劳务报酬所得与个人经营所得的区别
  • 长期股权投资采用成本法核算的,应按被投资单位
  • sqldbmon
  • sql server 2008保存数据库
  • 积分获取和消费的关系
  • 以经营房产投资合营收固定收益如何开发票?
  • 普通发票的税费计入应交税费吗
  • 销售返利冲抵货款怎么做账
  • 印花税怎么用
  • 出售无形资产和固定资产计入什么科目
  • 双分录怎么做记账凭证
  • 哪些税计入税金及附加
  • 代开普通发票需提供哪些材料?
  • 买货物没有进项税额,如何开6个点发票
  • 负债清偿损益明细表计税基础怎么填
  • 个税基数和社保有关系吗
  • 微软的搜索网站
  • sql2000语句
  • sql服务在哪
  • Mysql主从同步的实现原理
  • windows vista build
  • windows共享文件夹端口号
  • windows8文件夹怎么加密
  • elccest.exe是间谍广告程序吗 elccest进程有什么作用
  • linux wechat
  • 根据自己的需求配置一台电脑
  • win8语言设置
  • php.ini linux
  • xp升级win8.1
  • thinkpade431升级内存多大好
  • linux 有哪些
  • javascript概述及作用
  • Sublime Text + decoda 调试Quick-cocos2d-x 游戏
  • 菜鸟教程安卓下载
  • vue源码是用什么写的
  • js获取内容高度
  • jquery的使用步骤
  • python3 django教程
  • jquery div滚动条
  • 沈阳特慢病待遇
  • 福建电子税务局社保缴费操作
  • 福建广电网上营业厅下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设