O-C相关-03:面向对象概念的具体介绍

1.面向对象的概念

面向对象(object-oriented
;简称: OO) 至今还没有统一的概念,我这里把它定义为:按人们认识客观世界的系统思维方式,采用基于对象(实体)的概念建立模型,模拟客观世界分析、设计、实现软件的办法。通过面向对象的理念使计算机软件系统能与现实世界中的系统一一对应。

2.面向对象编程(Object Oriented Programming-OOP)是一种解决软件复用的设计和编程方法。这种方法把软件系统中相近相似的操作逻辑和操作应用数据、状态,以类的型式描述出来,以对象实例的形式在软件系统中复用,以达到提高软件开发效率的作用。

   优点:
   大幅度提高软件项目的成功率
   减少维护费

减少维护费

   提高可移植性和可靠性
面向对象设计四个个主要特征

抽象性

封装性多态性继承性

抽象性

3.面向对象和面向过程的区别:

面向过程:
 强调的是功能行为
关注的是解决问题需要哪些步骤
面向对象:
 将功能封装进对象,强调具备了功能的对象
 关注的是解决问题需要哪些对象



版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-07 16:28:57

O-C相关-03:面向对象概念的具体介绍的相关文章

Android中与ViewRoot相关的一些概念

1.View和ViewRoot ViewRoot从名称上来理解似乎是"View树的根",这很容易让人产生误解.因为ViewRoot并不属于View树的一份子.从源码实现上来看,ViewRoot和View对象并没有任何"血缘"关系,它既非View的子类,也非View的父类.ViewRoot可以被理解为"View树的管理者"--它有一个mView成员变量,指向的是它所管理的View树的根. 咱们看下下面的布局代码: <pre name=&quo

Ruby相关的各种概念(rvm, gem, bundle, rake, rails等)

Ruby 这个就不用多说了 RVM 用于帮你安装Ruby环境,帮你管理多个Ruby环境,帮你管理你开发的每个Ruby应用使用机器上哪个Ruby环境.Ruby环境不仅仅是Ruby本身,还包括依赖的第三方Ruby插件.都由RVM管理. Rails 这个也不用多说,著名开发框架.详细看 http://zh.wikipedia.org/wiki/Ruby_on_Rails RubyGems RubyGems是一个方便而强大的Ruby程序包管理器( package manager),类似RedHat的RP

delphi 基础之二 面向对象概念初步

面向对象概念初步 1.类的定义 类的定义分两步:首先在类(单元)的接口(interface)部分说明这个方法.然后在实现部分(implementation)部分编写方法的实现代码. 定义: type 类名=class(父类名) 数据域说明;      //类内部使用变量/常量的声明; 方法说明首部; end; 实现代码: procedure 类名.方法(参数); 实现代码; end; 2.创建对象及对象成员的引用 创建对象分两步: 首先声明对象,语法格式为 var 类名;//此时对象名还只是个指

Linux 文件系统相关的基本概念

本文介绍 Linux 文件系统相关的基本概念. 硬盘的物理组成 盘片硬盘其实是由单个或多个圆形的盘片组成的,按照盘片能够容纳的数据量,分为单盘(一个硬盘里面只有一个盘片)或多盘(一个硬盘里面有多个盘片)的硬盘.下面是一张盘片的示意图(此图来自互联网): 磁道和柱面硬盘中有磁头在盘片上读写数据,磁头固定在机械臂上,机械臂上有多个磁头(每个盘片的两侧各一个).当磁头固定不动时(假设机械手臂不动),盘片转一圈所画出来的圆就是磁道(track).所有盘片上相同半径的那个磁道就组成了柱面(cylinder

web页面相关的一些常见可用字符介绍——张鑫旭

by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=1623 正文开始之前先分享两个与字符相关的东西.首先是一张图片,是一张一些字符以及想对应的HTML实体表示的对照图片.如下: 然后是一个页面,是我收集的些杂七杂八字符页面,地址如下:http://www.zhangxinxu.com/sp/character.html 希望这两个东西能对您有所帮助,ok,下面是本文的主要

Android开发环境中的概念和工具介绍

最近学习Android开发,以前使用C/C++多一些,现在再补点Java知识,不管是哪种语言,都不过是一种工具而已,真的学起来,大同小异,无谓优劣.学习Android编程肯定是要先从环境搭建开始,无论是在Windows.还是Linux.Mac环境都可以,在搭建环境之前,有些概念综合了解一下确有必要,本文即是面向Android初学者的文章,作为Android入门的启蒙篇章. Android是Google主导开发的基于Linux开源智能移动终端操作系统,当然这里说的开源,也不是说Google把所有的

nginx虚拟主机概念和类型介绍

nginx虚拟主机配置实战 1,虚拟主机概念和类型介绍 所谓虚拟主机,在web服务里就是一个独立的网站站点,这个站点对应独立的域名(也可能是IP或端口),具有独立的程序及资源目录,可以独立地对外提供服务供用户访问. 这个这个独立的站点在配置里是由一定格式的标签段标记,对于apache软件来说,一个虚拟主机的标签段通畅被包含在<VirtualHost></VirtualHost>内,而nginx软件则使用一个server{}标签来标示一个虚拟主机,一个web服务里可以有多个虚拟主机主

用面向对象的Javascript来介绍一下自己

看了一道题目<用面向对象的Javascript来介绍一下自己>,然后自己觉得挺好玩的,所以就编写如下的代码. // HELPER function extend(sup, overrides) { var sub = overrides && overrides.constructor || function() { sup.apply(this, arguments); }; var fn = function() {}; var subp; fn.prototype = n

《Java从入门到放弃》JavaSE入门篇:面向对象概念(入门版)

要知道什么是面向对象,你首先要有个对象吧,所以······没有对象的可以回家洗洗睡了· 好吧,前面是开玩笑,要说明什么是面向对象,我们还是先 例子: 小呆:"小傻,你今天早餐吃的什么?" 小傻:"吃的东西可多啦,有两片面包,一块鸡肉饼,几片菜叶子,一点沙拉酱,另外还喝了一杯可乐,一袋油炸土豆条" 小呆:"小傻,你四不四洒啊!你直接说你吃的鸡肉堡套餐不行么 - -" 小傻:"呃,好吧,我吃的这个鸡肉汉堡套餐" OK,从上面的例子