1-1面向对象初探
变量也是Object
Data: the properties  or status; is the core
Operations: the functions对外能提供的服务,给灯通电或者不通电。
                           map
Problem space --------------Solution space
 
object  oriented(00)
是一种组织  设计 和实现的思想(Designs&Implementations)
 
2-2 面向对象基本概念
对象之间通过message进行信息交换
Object send messages
  Messages are
    Composed by the sender
    Interpreted by the receiver
    Implemented by the methods
  Messages
    May cause receiver to change state
    May return the result
 
Object vs.Class
  Object(cat)
        Represent things,events ,or concepts
        Respond to message at run-time
  Class(cat class)
    Define properties of instances
        Act like types in C++
 
OOP Characteristics
  1.Evertything is an objetct.
  2.A program is a bunch of objects telling each other what to do by sending messages.
  3.Each Object has its own memory make up of other objects.
  4.Every object has a type.
  5.All objects of a particular type can receive the same messages.
 
An object has an interface
  The interface is the way it receives messages.
  It is defined in the class the object belong to.
 
Functions of the interface
  如果有借口,那么可以很方便的换其他东西,做出在程序中可以拆换的东西
  耦合-内聚,耦合性大是我们希望做到的。
  Communication:与外界进行沟通。
  Protection;如果有借口,就可以保护内部的Implementations,外边的借口了还是不变的。
 
The Hidden Implementation(隐藏实现)
  Inner part of an object, data members to present its state, and the actions it takes
  when messages is rcvd is hidden.
Class creators Vs. Client programmers
  -Keep client programmer's hand off portions they should not touch.
  -Allow the class creators to change the interval working of the class without   worrying how it will affect the client programmers.
 
Encapsulation(封装)
  bundle data and methods dealing with these data together in an object
  Hide the details of the data and action.
  Restrict only access to the publicized methods.

C++程序设计-面向对象的更多相关文章

  1. Javascript高级程序设计——面向对象小结

    ECMAScript支持面向对象编程,对象可以在代码执行时创建,具有动态扩展性而非严格意义上的实体. 创建对象方法: 工厂模式:简单的函数创建引用类型 构造函数模式:可以创建自定义引用类型,可以想创建 ...

  2. 6. javacript高级程序设计-面向对象设计

    1. 面向对象设计 1.1 理解对象 1.1.1 属性类型 (1). 数据属性:相当于对象的字段,包含一个数据值的位置,在这个位置可以读取和写入值.数据属性中有4个描述其行为的特性: l [[Conf ...

  3. python程序设计——面向对象程序设计:类

    理解面向对象 基本原则是,计算机程序由多个能够起到子程序作用的单元或对象组合而成 关键性观念是,数据以及对数据的操作封装在一起,组成一个相互依存.不可分割的整体,即对象 python面向对象特性 完全 ...

  4. 2020/06/06 JavaScript高级程序设计 面向对象的程序设计

    ECMAScript虽然是一种面向对象的语言,但是他没有类的概念.所以他的对象也与其他语言中的对象有所不同. ECMA-262定义对象:一组没有特定顺序的值. 6.1 理解对象 创建对象的方法: 1. ...

  5. C++基本程序设计——面向对象程序设计课堂笔记

    主要对老师上课的ppt的笔记整理 C++基本程序设计 1.c++的输入输出 使用cin,cout和流运算符,开头须有 #include<iostream> (1)cin语句:cin> ...

  6. Javascript高级程序设计——面向对象之实现继承

    原型链: 构造函数中都有一个prototype属性指针,这个指针指向原型对象,而创建的实例也有指向这个原型对象的指针__proto__.当实例查找方法时先在实例上找,找不到再通过__proto__到原 ...

  7. Javascript高级程序设计——面向对象之创建对象

    对象创建方法: 工厂方法 构造函数模式 原型模式 组合构造函数和原型模式 寄生构造函数模式 问题构造函数模式 工厂模式: function Person(name, age){ var obj = n ...

  8. Javascript高级程序设计——面向对象之理解对象

    在面向对象语言中都有类的概念,通过类来创建具有属性和方法的对象.而ECMAScript中没有类的概念,ECMAScript中定义了对象:无需属性的集合,其属性值可以包含基本值.对象.或者函数. 在Ja ...

  9. python程序设计——面向对象程序设计:继承

    继承是为代码复用和设计复用而设计的 在继承关系中,已有的.设计好的类称为父类或基类,新设计的类为子类或派生类 派生类可以继承父类的公有成员,但不能继承其私有成员 如果需要在派生类中调用基类的方法,可以 ...

随机推荐

  1. Dockerfile构建容器---语法高亮

    三个文件扔进相关的目录即可 wget -O /usr/share/vim/vimfiles/doc/dockerfile.txt https://raw.githubusercontent.com/a ...

  2. npm 清理缓存

    npm cache clean -f 有些时候npm下载资源出错,再次下载的时候可能因为之前错误的缓存造成一直下载不成功. 此时可以清一下npm的缓存,然后尝试重新下载

  3. HTML基础【1】:认识 HTML

    什么是HTML ​ HTML其实是 HyperText Markup Language 的缩写,超文本标记语言 HTML的作用 1.首先利用记事本保存了一个标题和两段描述, 然后修改纯文本文件的扩展名 ...

  4. mac git 删除本地仓库文件

    递归清除本地文件夹下的Git文件,如果想重新建立仓库,那么在重新初始化新建的git仓库 //删除文件夹下的所有 .git 文件 find . -name ".git" | xarg ...

  5. 当后台获取内容有标签时如何过滤---angular

    $sce controller中注入$sce服务; 假设将获取到的标签内容为result; $scope.result = $sce.trustAsHtml(result); 在html页面中则< ...

  6. winform中DataGridView实现分页功能

    WinForm轻松实现自定义分页 (转载) WinForm轻松实现自定义分页 (转载)   转载至http://xuzhihong1987.blog.163.com/blog/static/26731 ...

  7. yii2框架中获取添加元素的主键

    控制器层: 模型层: 返回结果是:

  8. Pycharm:设置Tab键一次性为4个空格

    File > Settings > Editor > Code Style > Python

  9. 『Python』库安装

    1.安装指定版本的tensorflow 虽然官网有4种安装方式,并且推荐用anaconda的方式,但是有时候我们需要指定版本的tensorflow,而pip可以做到. 比如我装的是anaconda3. ...

  10. h5 中软键盘弹出后,点击退出键盘,页面无法恢复

    input 绑定blur事件,设置 window.scroll(0,0);