直观的理解面向对象

一. 面向对象设计把握的一个重要经验:

谁拥有数据, 谁就对外提供操作这些数据的方法.

二. 面向对象的几个典型案例

1. 人在黑板上画圆

2. 列车司机紧急刹车

3. 售货员统计收获小票的金额

三. 面向对象设计题

1. 球从一根绳子的一端移动到另一端

2. 两块石头磨成一把石刀, 石刀可以砍树, 砍成木材, 木材做成椅子

时间: 2024-10-12 12:03:15

直观的理解面向对象的相关文章

面向对象编程的弊端是什么? 深入理解面向对象

现时C++可以说是支持OOP范式中最为常用及高性能的语言.虽然如此,在C++使用OOP的编程方式在一些场合未能提供最高性能.[1]详细描述了这个观点,我在此尝试简单说明.注意:其他支持OOP的语言通常都会有本答案中提及的问题,C++只是一个合适的说明例子. 历史上,OOP大概是60年代出现,而C++诞生于70年代末.现在的硬件和当时的有很大差异,其中最大的问题是内存墙. 内存墙,指的是内存性能严重限制CPU性能发挥的现象.在过去的20多年中,处理器的性能以每年大约55%速度快速提升,而内存性能的

全面理解面向对象的 JavaScript

对象的上下文依赖 var str = "我是一个 String 对象 , 我声明在这里 , 但我不是独立存在的!" var obj = { des: "我是一个 Object 对象 , 我声明在这里,我也不是独立存在的." }; var fun = function() { console.log( "我是一个 Function 对象!谁调用我,我属于谁:", this ); }; obj.fun = fun; console.log( this

全面理解面向对象的JavaScript

转载:http://justcoding.iteye.com/blog/2019293 原文:http://www.ibm.com/developerworks/cn/web/1304_zengyz_jsoo/index.html?ca=drs-#major6 前言 当今 JavaScript 大行其道,各种应用对其依赖日深.web 程序员已逐渐习惯使用各种优秀的 JavaScript 框架快速开发 Web 应用,从而忽略了对原生 JavaScript 的学习和深入理解.所以,经常出现的情况是,

深入全面理解面向对象的 JavaScript

深入全面理解面向对象的 JavaScript (原著: 曾 滢, 软件工程师, IBM,2013 年 4 月 17 日) JavaScript 函数式脚本语言特性以及其看似随意的编写风格,导致长期以来人们对这一门语言的误解,即认为 JavaScript 不是一门面向对象的语言,或者只是部分具备一些面向对象的特征.本文将回归面向对象本意,从对语言感悟的角度阐述为什么 JavaScript 是一门彻底的面向对象的语言,以及如何正确地使用这一特性. 前言 当今 JavaScript 大行其道,各种应用

iOS runtime探究(一): 从runtime开始理解面向对象的类到面向过程的结构体

你要知道的runtime都在这里 转载请注明出处 http://blog.csdn.net/u014205968/article/details/67639205 本文主要讲解runtime相关知识,从原理到实践,由于包含内容过多分为以下五篇文章详细讲解,可自行选择需要了解的方向: 从runtime开始: 理解面向对象的类到面向过程的结构体 从runtime开始: 深入理解OC消息转发机制 从runtime开始: 理解OC的属性property 从runtime开始: 实践Category添加属

如何理解面向对象

如何理解面向对象? 什么是面向对象,面向对象其实就是一种设计模型.不用理解太多,这里不是最重要. 面向对象的基本特征如何理解? 1)抽象:将相同事物抽象出来成为一种数据结构,或者是用类(面向对象),或者是用结构体(面向过程)比如KNN算法,求解测试样本的k个邻接点,这k个邻接点,甚至整个邻接点都可以抽象出来一种数据结构.在比如决策树算法中,构建决策树,由于一个决策树有多个结点,结点和结点之间互相生成.首先要抽象出结点的数据类型,这就是抽象. 2)封装:封装的好处就是使离散的数据整体化,将离散的数

第三节课、流程控制语句及理解面向对象的概念

一.单分支语句 |- if(逻辑表达式) 例子: if(3 > 2) { // 代码语句1 } // 代码语句2 二.多分支语句 |- if(逻辑表达式1) 例子: if(逻辑表达式1) { // 代码语句1 } else if(逻辑表达式2) { // 代码语句2 } else if(逻辑表达式n...) { // 代码语句n... } 三.循环语句 (1).while语句 |- 例子: int i = 0: while(i < 10) { System.out.println("

从一些简单代码实例彻底理解面向对象编程思想|OOP本质是什么?

从Rob Pike 的 Google+上的一个推看到了一篇叫<Understanding Object Oriented Programming>的文章,我先把这篇文章简述一下,然后再说说老牌黑客Rob Pike的评论. 先看这篇教程是怎么来讲述OOP的.它先给了下面这个问题,这个问题需要输出一段关于操作系统的文字:假设Unix很不错,Windows很差. 这个把下面这段代码描述成是Hacker Solution.(这帮人觉得下面这叫黑客?我估计这帮人真是没看过C语言的代码) 1 2 3 4

深入理解面向对象的三大基本特征

我们都知道面向对象有三个基本特征:封装,多态和继承. 封装: 我先来援引一 位网友写的段子:基本的变量已经不再浮游于一大段一大段的程序中了,它们已经放弃了(其实是程序员不用这种方式了)这种自由自在的存在方式,而是安稳的寄 居于庞大而蹒跚的“对象”内部,与外界隔开来,通过迂回曲折的间接途径与外部世界联系和通信.而这些对象,就是它们这些基本变量的生存机器! 在面向过程的开发中,变量被暴露在整个程序中,不小心的一个修改就可能导致整个程序出错. 所以封装有利于我们让自己的程序更健壮.这个大家很好理解.