数据抽象和封装基础知识__笔记
来源:互联网 发布:怎么链接淘宝店铺网址 编辑:程序博客网 时间:2024/05/29 11:23
数据抽象和封装基础知识__笔记,供以后复习用:
类背后蕴含的基本思想是数据抽象和封装
数据抽象是一种依赖于接口和实现分离的编程和设计技术。类的设计者必须关心类是如何实现的,但是使用该类的程序员不必了解这些细节,仅需抽象地考虑该类型能做什么。
封装是一项将低层次的元素组合起来形成新的、高层次实体的技术。函数和类都是封装的形式。被封装的元素隐藏了他们的实现细节,其主要优点在于:避免类内部出现无意的、可能破坏对象状态的用户级错误;使得修改类的实现时只要保持接口不变,就无需改变用户级代码。
类中可以定义的内容包括:数据成员、成员函数和类型别名:如string类中定义的string::size_type类型,这些类型别名一般定义为public以便用户使用它。
类的两个重载成员函数形参个数和类型不能完全相同,不能通过返回值类型区分两个函数是否重载。
inline成员函数的定义必须在调用该函数的每个源文件中是可见的。不在类定义体内定义的inline成员函数,其定义通常应该放在有类定义的同一个头文件中。
在头文件中将类定义完后,千万不要忘记在最后一个右花括号后面的分号。
class A
{ };
类定义:一旦遇到右花括号,类的定义就结束了。
class B { };
并且一旦定义了类,那就知道了所以的类成员,以及存储该类对象的所需的存储空间
可以声明一个类而不定义它:
class A;
这个声明有时称为前向声明。在声明之后定义之前,类是一个不完全类型,即已知A是个类型,但不知道包含哪些成员。
不完全类型只能以有限的方式使用。不能定义该类型的对象。不完全类型只能用于定义指向该类型的指针及引用,或者用于声明(而不是定义)使用该类型作为形参类型或返回类型的函数。
在创建类的对象之前,必须完整地定义该类。必须定义类,而不只是声明类,这样编译器就会给类对象分配相应的存储空间。同样,在使用引用或指针访问类的成员之前,必须已经定义类。
只有当类定义已经在前面出现过,数据成员才能被指定为该类类型。如果该类型是不完全类型(没有完整定义),那么数据成员只能是指向该类的指针或引用。
- 数据抽象和封装基础知识__笔记
- 抽象和封装 笔记
- 【从C到C++学习笔记】类声明/公有私有保护成员/数据抽象和封装
- 数据抽象与封装
- C++学习笔记(4)-数据抽象&数据封装&接口(抽象类)
- Java小记__抽象类和接口
- 十五、从一个实例看数据封装和抽象
- 基本概念:抽象和封装
- 封装和抽象
- 抽象和封装
- 抽象和封装
- 封装和抽象
- 【JAVA】抽象和封装
- 抽象和封装
- java 抽象和封装
- JavaOop01抽象和封装
- 抽象和封装
- 抽象和封装
- Android--GridView/ListView…
- GridView 得到指定item
- 【转】 挖雷游戏的概率
- 【转】导入工程的“The import…
- 【原创】please install&nbsp…
- 数据抽象和封装基础知识__笔记
- 数学之美 笔记一
- 【转】向前-向后算法(forward-bac…
- android.view.WindowManager$BadTo…
- 《高效学习OpenGL》 之 卷积 glConvolutionFilter2D(), glCopyConvolutionFilter2D(),glSeparableFilter2D()
- apply()和call()、bind()的使用介绍
- 【转】在Android中使用WindowManag…
- 【转】Android系统服务-WindowMana…
- 【转】ARM下高效C编程