python-面向对象-01_面向对象(OOP)基本概念
2024-08-26 08:04:36
面向对象(OOP)基本概念
面向对象编程 —— Object Oriented Programming
简写 OOP
目标
- 了解 面向对象 基本概念
01. 面向对象基本概念
- 我们之前学习的编程方式就是 面向过程 的
- 面相过程 和 面相对象,是两种不同的 编程方式
- 对比 面向过程 的特点,可以更好地了解什么是 面向对象
1.1 过程和函数(科普)
- 过程 是早期的一个编程概念
- 过程 类似于函数,只能执行,但是没有返回值
- 函数 不仅能执行,还可以返回结果
1.2 面相过程 和 面相对象 基本概念
1) 面相过程 —— 怎么做?
- 把完成某一个需求的
所有步骤
从头到尾
逐步实现 - 根据开发需求,将某些 功能独立 的代码 封装 成一个又一个 函数
- 最后完成的代码,就是顺序地调用 不同的函数
特点
- 注重 步骤与过程,不注重职责分工
- 如果需求复杂,代码会变得很复杂
- 开发复杂项目,没有固定的套路,开发难度很大!
2) 面向对象 —— 谁来做?
相比较函数,面向对象 是 更大 的 封装,根据 职责 在 一个对象中 封装 多个方法
- 在完成某一个需求前,首先确定 职责 —— 要做的事情(方法)
- 根据 职责 确定不同的 对象,在 对象 内部封装不同的 方法(多个)
- 最后完成的代码,就是顺序地让 不同的对象 调用 不同的方法
特点
- 注重 对象和职责,不同的对象承担不同的职责
- 更加适合应对复杂的需求变化,是专门应对复杂项目开发,提供的固定套路
- 需要在面向过程基础上,再学习一些面向对象的语法
最新文章
- EZchip将推全球首款100核64位ARM A-53芯片
- eclipse将android项目生成apk并且给apk签名
- Net设计模式实例之原型模式( Prototype Pattern)
- android 之 adb 启动问题的一般解决办法
- 第1课 - 学习Lua的意义
- [HDU1004] Let the balloon rise - 让气球升起来
- 导入网页数据到 Google Sheet
- php的开发的apache的配置及伪静态的应用
- VM中centos设置子网内虚拟机ip
- (转)A Recipe for Training Neural Networks
- matlab-画个拱桥和倒影?
- 解决背景图文字盖住html里面的dom元素
- 使用Go语言访问JSON数据(gojsonq)
- SQLSqlserver中如何将一列数据,不重复的拼接成一个字符串
- Qt之创建自定义类型
- iOS - ipa安装包大小优化
- 论文笔记之:Dynamic Label Propagation for Semi-supervised Multi-class Multi-label Classification ICCV 2013
- codecombat js
- Tomcat篇
- 匿名管道和pipe函数
热门文章
- [OpenCV] Samples 17: Floodfill
- osx 10.11 一键制作U盘傻瓜工具最新版 无需任何命令
- 【netcore基础】MVC API全局异常捕捉中间件ExceptionHandlerMiddleWare
- css3整理--transform
- SVM 核方法
- 设计模式学习--Singleton
- xml配置
- np.unravel_index
- [Asp.net]Uploadify上传大文件,Http error 404 解决方案 - wolfy
- SQL中的Continue和Break