《面向对象的思考过程(原书第4版)》一1.1 基本概念

简介: 本节书摘来自华章出版社《面向对象的思考过程(原书第4版)》一书中的第1章,第1.1节,南森·马茨(Nathan Marz) [美] 詹姆斯·沃伦(JamesWarren) 著 马延辉 向 磊 魏东琦 译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

本节书摘来自华章出版社《面向对象的思考过程(原书第4版)》一书中的第1章,第1.1节,[美] 马特·魏斯费尔德(Matt Weisfeld) 著

黄博文 译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.1 基本概念

本书主要目标是让你学会思考如何将面向对象概念应用于面向对象的系统设计中。历史上定义面向对象的语言拥有以下特点:封装(encapsulation)、继承(inheritance)和多态(polymorphism)。因此,如果设计一门语言时没有完全实现以上特性,那么通常我们认为该语言不是完全面向对象的。即使实现了这三点,我也往往会加入组合特性。因此,我认为面向对象的概念如下;
封装
继承
多态
组合
本书接下来会详述这些特性。
从本书第1版开始,我一直在努力解决的问题是这些概念如何直接与当前的设计实践关联起来,因为设计实践始终在变化当中。例如,在面向对象设计中使用继承总是饱受争议。继承是否实际上破坏了封装?(稍后的章节会讨论这一主题。)甚至现在,很多开发人员都试图尽量避免使用继承。
我的方式是始终围绕概念来学习。无论你是否使用继承,你至少需要理解什么是继承,这会保证你的设计决策是有据可依的。正如在介绍中提及的那样,本书目标读者是希望学习基本的面向对象概念的总体介绍的人。请记住这一点,本章中我会展现基本的面向对象概念,希望读者能在做重要的设计决策前打下一个坚实的基础。本章涵盖了这些概念的基本知识,随后的章节中的主题也会讨论这些概念的细节。

相关文章
如何实现面向对象
如何实现面向对象
56 0
什么是面向对象,如何用面向对象的思想写代码
什么是面向对象,如何用面向对象的思想写代码
|
Java 程序员
面向对象的思想(1)之概述
面向对象的思想(1)之概述
55 0
|
Java
Java面向对象基础1——基础概念
Java面向对象基础1——基础概念
98 0
Java面向对象基础1——基础概念
|
存储 Java 程序员
面向对象基本概念
面向对象基本概念
122 0
|
Java Android开发
Java面向对象程序设计基础实战
Java面向对象程序设计基础实战
220 0
|
编译器 C++
C++多态的基本概念与原理刨析
多态分为两类 • 静态多态: 函数重载 和 运算符重载属于静态多态,复用函数名 • 动态多态: 派生类和虚函数实现运行时多态 静态多态和动态多态区别: • 静态多态的函数地址早绑定 - 编译阶段确定函数地址 • 动态多态的函数地址晚绑定 - 运行阶段确定函数地址 下面通过案例进行讲解多态
99 0
C++多态的基本概念与原理刨析
|
存储 缓存 关系型数据库
LotusDB 设计与实现—1 基本概念
LotusDB 是一个基于 LSM Tree 进行设计,并结合 B+ 树优势的单机 KV 存储引擎,读写性能稳定、快速。
188 0
LotusDB 设计与实现—1 基本概念
|
Java C# 数据库
《面向对象的思考过程(原书第4版)》一 第3章 高级的面向对象概念
构造函数对于结构化编程的程序员来说是个新概念。非面向对象的语言(比如COBOL、C和Basic)通常不会用到构造函数。C/C++中的结构体(struct)具有构造函数。前两章提及过这个用于构造对象的特殊方法。
1322 0
|
XML 程序员 uml
《面向对象的思考过程(原书第4版)》一 导读
本书讲述了面向对象思考的过程。选择一本书的主题和书名是个很重要的决定,但如果主题概念性很强,决定就没那么容易了。大部分书籍都只涉及了编程及面向对象设计的某个方面。一些主流的书阐述了诸如面向对象分析、面向对象设计、面向对象编程、设计模式、面向对象的数据结构(XML)、统一建模语言(UML)、面向对象Web开发、面向对象移动开发、进阶面向对象编程语言等主题,当然也包括了其他与面向对象编程相关的主题。
2007 0
下一篇
无影云桌面