面向对象的三大特性:
面向对象的三大特性,封装、继承、多态 。
利用封装、继承、多态的方式去建模,从而大量减少重复代码、降低模块间耦合,像拼积木一样组装了整个“世界” 。
1.封装
封装好的类如同一个黑匣子,外部无法看到内部的构造及运转机制,而只能访问其暴露出来的属性或方法 。注意,把一些不相干的对象硬生生封装在一起,就会使代码变得莫名其妙,难于维护与管理,所谓“物极必反,过犹不及”,所以封装一定要适度 。
计算机的封装:
它必然需要一个机箱把各种配件封装进去,如主板、CPU、内存、显卡、硬盘等 。
一方面,机箱起到保护作用,防止异物(如老鼠、昆虫等)进入内部而破坏电路 。
另一方面,机箱也不是完全封闭的,它一定对外预留有一些访问接口,如开机按钮、USB接口等,这样用户才能够使用计算机计算机主机的类结构:
文章插图
2.继承
继承可以使父类的属性和方法延续到子类中,这样子类就不需要重复定义,并且子类可以通过重写来修改继承而来的方法实现,或者通过追加达到属性与功能扩展的目的 。
类是对象的模板,那么父类(或超类)则可以被看作模板的模板 。
文章插图
继承的目的并不只是全盘照搬,而是可以基于父类的基因灵活扩展 。
我们知道任何类都有一个toString()方法,但我们根本没有声明它,这是为什么呢?其实这是从Object类继承的方法,因为Object是一切类的祖先类 。
3.多态
在我们创建对象的时候通常会再定义一个引用指向它,以便后续进行对象操作,而这个引用的类型则决定着其能够指向哪些对象 。
比如,用犬类定义的引用绝不能指向猫类对象,所以对于父类定义的引用只能指向本类或者其子类实例化而来的对象,这就是一种多态 。
再进一步讲,多态其实是利用了继承(或接口实现)这个特性体现出来的另一番景象 。
实现多态的方式:有二种方式:
1.覆盖;
2.重载 。
覆盖,是指子类重新定义父类的虚函数的做法 。
重载,是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同) 。
多态的作用:
【面向对象程序设计的三大特征 封装继承和多态是面向对象编程的三大特征】多态化的外设使计算机功能更加强大、灵活、可扩展、可替换 。其实这就是设计模式中非常重要的一种“策略模式”,接口的定义是解决耦合问题的关键所在 。
- 和女朋友怎么找话题聊天 和对象聊天没话题怎么办-
- 和相亲对象越聊越没劲 跟相亲对象怎么约会
- 刚认识的相亲对象怎么聊天 相亲对象初次见面怎么聊
- 和对象聊天找话题开场白 跟相亲对象聊天话题
- 农药主要成分是什么
- 男人找对象其实都很精明 男生怎么样能找到对象
- 相亲女孩有这几种表现就别追了 相亲对象从不主动联系 回信息也慢
- 惹对象生气了怎么办 女朋友生气了要冷战怎么办
- 惹对象生气了怎么哄道歉 把女朋友惹生气了怎么哄啊
- 惹对方生气了哄人的话 把对象惹生气了怎么哄情话