面向对象分析与设计(C++)课堂笔记
来源:互联网 发布:看火影忍者的软件 编辑:程序博客网 时间:2024/05/20 01:10
对象是程序设计最基本的单元
对象:对象标识、属性、操作(对象标识又分为内部标识、外部标识)
三三制原则
继承:英文语义”is a kind of” 自动的拥有或隐含的复制
虚基类:解决多继承问题virtual class
聚合关系:整体——部分结构。语义:”has a” OR “is a part of”
关联:类与类中的一个关系
消息:消息是面向对象发出的服务请求。
消息组成:对象标志、服务标志、输入标志、输出标志。
第二次课
复习:
类、对象、继承、封装、ddl、消息
结构:一般——特殊、部分——组成
新内容
多态:指同一命名可具有不同的语义。实现的机制:重写(override)、动态绑定(dynamic binding)、类属(gennic)
九菜单原则
五个层次:主题层、类和对象、结构层、属性层、服务层。
第三次课
用例——>基本模型(类、属性、操作、结构、主题或者包)
四种关系:一般特殊(空三角)、整体部分(菱形)、关联关系(n:n)、消息关系(箭头)
面向对象设计
人机交互界面的设计准则:有层次、步骤相对简单、减少人的记忆、不能哑播放、要有Undo的功能、一类菜单可采用7+-2准则、下拉菜单可采用三三制
第四次课
1、常量:常量变量、常量参数、常量函数
2、参数缺省函数:int fun(int a ,int b=1;float c=0.5)
3、引用(reference):在引用上的操作等同于对原目标对象的操作。
引用VS指针:不可多次赋值、需要初始化。引用是别名,不需要分配内存区域。
4、内联(嵌)函数:
5、Protect针对继承
6、类的定义和实现分离:类的定义student.h;类的实现student.cpp(可以做成动态链接库,为的是隐藏代码的实现)
7、条件编译
例:student.h
#ifndef STUDENT_H //条件编译
#define STUDENT_H
Class student{}//定义student类
#endif
文件student.cpp
#include<iostream.h>
#include “student.h”
Void student::input(int n,char *na,float s)
{
Number=n;score=s;
name=new char[strlen(na)+1];//zhu\0;给\0留一个位置
Strcpy(name,na);
}
8、三个文件:student.h,student.cpp,main.cpp
类的成员函数实现方法用::引导,如:
Void student::display(){……}
类的开头用#ifndef student.h 防止记性二次定义
9、构造函数和析构函数
定义:构造:类名(参数名)
析构:~类型()
拷贝构造函数和赋值构造函数
例:student s1(9902,’xu’,88);
Student s2=s1; //赋值构造函数
Student s3(s2); //拷贝构造函数
实现:
Point(float x,float y);
Point(const Point &p); //拷贝构造函数
构造函数初始化列表
第五次课
1、属性服务
a) 私有----友元、自己
b) 保护----继承、友元
c) 公有
2、构造函数析构函数成对出现
3、Malloc---free
New---delete
4、Time.cpp
#include<iostream.h>
#include “time.h”
Time::time(int h,int m,int s){;}
Void time::print(){;}
Void time:nSecond(){;}
5、友元的类或者函数可以访问类中的私有数据(保护数据等)(一定程度上解决烂继承问题)
友元:不传递、不可逆
友元类: friend class 类名(友元)
友元成员函数:friend 函数 (一部分成员函数)
友元函数: friend 返回值类型 类名:函数名 (将C代码嵌入C++)
6、模板Template
#Include<iostream.h>
Template<class Type> //声明
Void sort(Typex[],int size){;}
调用;
Void main()
{
Int a={1,3,4,2};
Sort(a,a.length);
}
7、派生和继承
a) 派生类具有父类的全部的成员(服务和属性)
b) 派生类重新定义父类的函数
自己的print可打印所以属性,基类只能是打印基类的。
c) 继承方式有3种:私有、保护、公有
d) 基类的构造函数先执行
8、虚基类——解决拷贝数据冗余
多态性——虚函数:父类的引用调用子类的实体
多态指同一个多种解释。即P可父可子。默认是父,虚函数是子
9、动态联编
- 面向对象分析与设计(C++)课堂笔记
- 面向对象分析与设计学习笔记
- 深入浅出面向对象分析与设计笔记
- 面向对象课堂笔记
- 面向对象(上)-----课堂笔记
- 面向对象分析与设计
- 面向对象分析与设计
- 面向对象分析与设计
- 面向对象设计与分析
- 面向对象分析与设计
- 面向对象程序设计课堂笔记
- PHP 面向对象 课堂笔记
- [课堂笔记]四.面向对象
- 深入浅出面向对象分析与设计——学习笔记
- HeadFirst面向对象分析与设计摘要笔记
- 面向对象分析与设计课程——学习笔记
- Effective c++(笔记)之继承关系与面向对象设计
- 《面向对象分析与设计》读书摘要与学习笔记(一)
- MD5加密“破解”在.NET平台实现最基本的理解
- 【转】.net中快捷键的使用
- GDI+在绘制验证码中的使用
- windows与VMware ubuntu虚拟机实现文件共享
- JAVA.WEB笔记
- 面向对象分析与设计(C++)课堂笔记
- 期刊搜索问题——SCI、EI、IEEE和中文期刊
- 实例讲解虚拟机3种网络模式(桥接、nat、Host-only)
- shell编程之正则表达式
- springframework(四)Bean的依赖设置与集合对象的处理
- 无硝烟的互联网公司战争 “三国演义”之阿里巴巴
- Ubuntu12.04等的输入法问题 中英文切换 fitcx
- 版本控制系统Subversion
- VMWare中安装windowsXP遇到的问题