第4周 继承与多态
以下为个人学习笔记和习题整理 课程:面向对象程序设计 ——Java 语言 - 浙江大学 - 翁恺 @ 中国大学 MOOC https://www.icourse163.org/course/ZJU-1001542001 # 课堂笔记 面向对象程序设计语言有三大特性:封装、继承和多态性。 # 继承 / 派生 extends 用来做基础派生其它类的那个类称为父类、超类或者基类,派生出来的新类称为子类。 Java 用关键字 extends 表示这种继承 / 派生关系。 class ThisClass extends SuperClass { //…}#...
more...第3周 对象容器
以下为个人学习笔记和习题整理 课程:面向对象程序设计 ——Java 语言 - 浙江大学 - 翁恺 @ 中国大学 MOOC https://www.icourse163.org/course/ZJU-1001542001 # 课堂笔记 容器 collection 或 container 是现代程序设计非常基础而重要的手段。 所谓容器,就是 “放东西的东西”。 数组可以看作是一种容器,但是数组的元素个数一旦确定就无法改变,这在实际使用中是很大的不足。 一般意义上的容器,是指具有自动增长容量能力的存放数据的一种数据结构。 在面向对象语言中,这种数据结构本身表达为一个对象。 所以才有...
more...第1周 类与对象
以下为个人学习笔记和习题整理 课程:面向对象程序设计 ——Java 语言 - 浙江大学 - 翁恺 @ 中国大学 MOOC https://www.icourse163.org/course/ZJU-1001542001 # 课堂笔记 # 用类制造对象 对象是实体,需要被创建,可以为我们做事情 类是规范,根据类的定义来创建对象 对象(这只猫) 表达东西或事件 运行时响应消息(提供服务) 类(猫) 定义所有猫的属性 就是 Java 中的类型 可以用来定义变量 graph TD A[类] --> |定义了|B[对象] B --> |是...的实体|A对象 = 属性 +...
more...第14周 模板和标准模板库简介
以下为个人学习笔记和习题整理 课程:计算机程序设计(C++)- 西安交通大学 @ 中国大学 MOOC https://www.icourse163.org/course/XJTU-46006 # 课堂笔记 # 函数模板 函数重载是最佳方案吗? 假如设计一个求两参数最大值的函数,在实践中可能需要定义四个函数: int max ( int a, int b ) { return ( a > b ) ? a , b; }long max ( long a, long b ) { return ( a > b ) ? a ,...
more...第13周 标准输入输出与文件操作
以下为个人学习笔记和习题整理 课程:计算机程序设计(C++)- 西安交通大学 @ 中国大学 MOOC https://www.icourse163.org/course/XJTU-46006 # 课堂笔记 # 流与流库 # 流 流是指从一个位置向另一个位置传输的一连串数据的集合。 在输入输出过程中,会在内存中为每一个数据流开辟一个内存缓冲区,用来存数据。从而匹配不同工作效率的对象。 graph LRA[键盘] B[扫描仪]C[文件]A --> D[abc...输入流]B --> DC --> DD --> E[进程使用的内存区]F[显示器]G[文件]H[打印机]E...
more...第12周 统一接口 不同实现:多态性
以下为个人学习笔记和习题整理 课程:计算机程序设计(C++)- 西安交通大学 @ 中国大学 MOOC https://www.icourse163.org/course/XJTU-46006 # 课堂笔记 # 多态性 # 含义 多态指相同语法结构,代表多种功能或操作 多态实现了 “一种接口,多种方法” 将运算符重载,将函数重载,实现不同功能 # 两种形式 编译时多态性 编译器对源程序进行编译时,就可以确定所调用的是哪一个函数 编译时多态性通过重载来实现 - 函数重载 - 运算符重载 运行时多态性 在程序运行过程中,根据具体情况来确定调用的是哪一个函数 运行时多态通过虚函数 virtual...
more...第11周 取其精华 发挥优势:继承
以下为个人学习笔记和习题整理 课程:计算机程序设计(C++)- 西安交通大学 @ 中国大学 MOOC https://www.icourse163.org/course/XJTU-46006 # 课堂笔记 采用继承式的抽象方法描述万物,减少代码重复。 class person{ protected: char *name; // 人名 char sex; // 性别 char pid[19]; // 身份证号码 int weight; // 体重 int high; // 身高 public: person(); // 无参构造函数 person(char...
more...第10周 数据的抽象与封装:类与对象2
以下为个人学习笔记和习题整理 课程:计算机程序设计(C++)- 西安交通大学 @ 中国大学 MOOC https://www.icourse163.org/course/XJTU-46006 # 课堂笔记 # 构造函数 在声明一个对象后,紧接着要给对象初始化,对象初始化实质上就是对所有数据成员赋值。 如果对象中某个数据成员未赋值,则该数据成员的值不确定,那么该对象的值不完整。 构造函数 Constructor 用于创建一个对象,提供了初始化该对象的一种简便手段。 语法格式<类名>...
more...