oop-面向对象编程?
什么叫面向对象编程:
将需要解决的问题,抽象成一个或者多个对象的集合,通过操作对象的行为、改变对象的属性,达到解决问题的效果
出现面向对象编程的原因、背景:
面向对象编程,是解决更复杂问题的方式,是抽象的更高一层次表现
背景:
计算机是二进制形式运行的,所以最开始的编程方式是二进制编程方式,通过01进行编码,解决特定问题
随着计算机的推广、普及,需要编码的形式抽象,让不同的人可以使用计算机解决问题,对二进制编码的操作进行抽象,形成汇编语言
但是汇编语言还是受众太窄,所以进一步提取,抽象成类人类自然语言,如C语言。这时候,解决问题,通常将问题划分成不同阶段,每阶段做特定的事情,又称面对过程编程。
由于面对过程编程容易破话问题的完整性和连贯性,不能对复杂问题有很好处理(如著名的大象放冰箱问题)。由此,对过程语言进一步提炼,抽象成人类思考问题的方式,每一个问题都可以有一个或者多个对象的集合描述
有意思的是,这整个过程有点类似计算机领域的一个万能钥匙:每个问题,都可以通过增加中间件来消除。
面向对象编程的优势、解决了什么问题:
非面向对象编程,如面向过程语言,对过程或者底层计算机的依赖较大,学习成本高,解决复杂问题能力较弱
面向对象编程更符合人类思考问题的方式,几乎或者很少依赖底层实现,学习成本低,可以构建大型复杂、易维护的项目
面向对象编程的特点、特性:
1-万物皆对象
2-程序是对象的集合,以通信形式协作
3-对象的存储结构由其他对象组成
4-每个对象都拥有其类型
5-某一特定类型的所有对象都可以接受同样的消息
面向对象编程的本质:
程序可以通过添加新类型的对象使自身使用于某个特定问题

浙公网安备 33010602011771号