C++自学笔记 面向对象程序设计OOP(Object Oriented Programming)
什么是对象?
Objects = Attributes + Services
Data : The properties or status
Operations: the fuctions
C语言中定义的变量用来存储数据,所以它可以理解为是“对象”
“任意变量都是对象”
对象拥有自己的属性和服务;
比如一盏灯,它的亮度,冷暖等就是它的属性;而它能带来的服务就是照明,拥有接口 并且能够输入(电)输出(光);
比如一个杯子,它的杯身颜色,里面水的多少就是它的属性;而它的服务就是让你喝水,同样拥有接口(杯口),输能入(水)和输出(水)。
面向过程是针对一个问题或者一个场景,需要有些什么步骤完成;
面向对象是针对一个问题或者一个场景中存在什么对象(物体),这些对象有什么属性能接受什么能提供什么服务/做什么操作。
object-oriented 面向对象 专注对象 而不是操作过程;
类和对象:
类:对象的类别;
类定义了对象,对象是类的实例;
OOP Characteristics:
- 所有东西都是对象
- 一个程序就是一堆对象在通过发信息的方式相互告知要做什么操作(C语言源代码则是函数的集合)
- 每一个对象都有它自己的由其他对象组成的内存
- 每一个对象都有一个类型
- 所有特殊类型的对象都可以接受相同的信息(所有可以接受相同消息的对象都是同一特殊类型)
Interface:
一个对象拥有一个接口(拥有相同接口的对象是同一类型)
接口的功能:
- Communication (便于更换,交流、松散耦合--loose coupling)
- Protection (外面的接口保护里面的结构--hidden implementation)
oop 的三大原则:封装encapsulation,继承inheritance,多态polymorphic
hello my world
本文来自博客园,作者:slowlydance2me,转载请注明原文链接:https://www.cnblogs.com/slowlydance2me/p/16725792.html