python第三十八课——面向对象(一)
1.面向对象:(思想) 面向:看、关注、瞅 对象:个体、实体、实例、结果单词:object在python中一些皆对象 面向过程:(思想) 面向:看、关注、瞅 过程:经过、经历、从头到尾 使用一些生活中的案例来对面向过程和面向对象进行区分比较: 案例一: 使用面向过程的思想解决吃饭的问题? 1.考虑今天吃什么? 2.去菜场买菜 3.挑菜(货比三家、针对性砍价) 4.结账走人 5.摘菜 6.洗菜 7.切菜 8.炒菜 9.焖饭 10.吃饭 11.洗刷 使用面向对象的思想解决吃饭的问题? 1.考虑今天吃什么? 2.去饭店 1).调用服务员的点菜功能 2).将点菜的信息给到厨师 3).厨师调用服务员的上菜功能 3.开始吃饭 4.结账走人(方式很多) 案例二: 使用面向过程的思想解决买电脑的问题?(组装电脑) 1.上网查阅一些参数 2.去电脑城(路上会遇到一些发传单小gg、小mm) 3.挑选配件(货比三家) 4.回家整理下 5.再次去电脑城顶配置 6.安装硬件(监工) 7.安装系统软件和应用软件 8.自己扛电脑回家,开始LOL 使用面向对象的思想解决买电脑的问题?(组装电脑) 1.找一个懂电脑的老手(比如老郭),将需求告知他 2.把钱给到老郭,坐等老郭凯旋回来 3.老家将电脑扛回你家,一起LOL 面试题: 请谈一谈你对面向对象思想的理解?(逗比版) .... 面向过程: 从头到尾全部参与(参与者),这程序中的体现主要是定义模块、定义类、定义函数,以及定义其它的成员 面向对象: 先不急着去定义任何内容,找一找有没有现有的对象存在(找对象、指挥者) 1.如果有对象,那么就调用此对象的函数或者属性完成需求 2.如果没有对象,那么先创建对象,然后在调用对象的功能或者属性完成需求 3.如果没有对象也没有类,那么就先设计类,然后在创建对象,在完成需求 总结:在之后的学习和开发过程中,面向对象和面向过程是都会用到的
python第三十八课——面向对象(一)的更多相关文章
- python第三十九课——面向对象(二)之初始化属性
设计Car类,初始化属性speed,提供一个run函数 import time class Car: def __init__(self,speed): self.speed=speed #将Road ...
- python第三十九课——面向对象(二)之设计类
1.设计类class 车: #属性 颜色 = red 品牌 = "BMW" 车牌 = "沪A88888" #函数 行驶(): 停止(): 2.实例化车对象 ca ...
- NeHe OpenGL教程 第三十八课:资源文件
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- python第三十二课——队列
队列:满足特点 --> 先进先出,类似于我们生活中的买票.安检 [注意] 对于队列而言:python中有为其封装特定的函数,在collections模块中的deque函数就可以获取一个队列对象; ...
- 笨办法学Python(三十八)
习题 38: 阅读代码 现在去找一些 Python 代码阅读一下.你需要自己找代码,然后从中学习一些东西.你学到的东西已经足够让你看懂一些代码了,但你可能还无法理解这些代码的功能.这节课我要教给你的是 ...
- 潭州课堂25班:Ph201805201 django 项目 第三十八课 后台 文章发布,FastDFS安装 配置(课堂笔记)
, .安装FastDFS # 从docker hub中拉取fastdfs镜像docker pull youkou1/fastdfs # 查看镜像是否拉取成功docker images # 安装trac ...
- python第三十二课——栈
栈:满足特点 --> 先进后出,类似于我们生活中的子弹夹 [注意] 对于栈结构而言:python中没有为其封装特定的函数,我们可以使用list(列表)来模拟栈的特点 使用list对象来模拟栈结构 ...
- Python学习第二十八课——Django(templates)
templates 讲后台得到的数据渲染到页面上:话不多说,先看具体代码. urls: from django.conf.urls import url from django.contrib imp ...
- Python学习第十四课——面向对象基本思想part1
面向对象的基本思想 # 写法1 person1 = { 'name': 'hanhan', ', 'sex': '男' } def xue_xi(person): print('%s在学习' % pe ...
随机推荐
- 用MVC5+EF6+WebApi 做一个小功能(二) 项目需求整理
在一个项目开始前,需求整理大概要占到整个项目周期15%甚至30%的比重,可以说需求理得越清楚,后续开发中返工几率越小.在一个项目中,开发新功能的花费的精力要远远小于修改功能的精力,这基本是一个共识.老 ...
- CSS 样式属性
大小 width 宽 body { min-width:1200px; height 高 } ...
- [PHP] 看博客学习插入排序
定义数组长度变量$len,使用count()函数,参数:数组 for循环数组,条件:从第二个开始,遍历数组,循环内 定义临时变量$temp,赋值当前元素 for循环数组,条件:遍历当前元素前面的所有元 ...
- Java基础——Servlet(四)
最近一直在学习Servlet,真的有烦躁,一下子要创建好几个文件,服务端.客户端.html页面....学习进度蛮慢的,很容易失掉信心.当学习到cookie时,发现有好多实现是在我们日常生活中可以会遇得 ...
- 从实例角度分析java的public、protected、private和default访问权限
一.public 同一个package 1.本类内部 public class A { public int f=1; public void m1() {} public void m2() { f ...
- 悟空模式-java-建造者模式
[此是锻炼神冰铁,磨琢成工光皎洁.老君自己动钤锤,荧惑亲身添炭屑.五方五帝用心机,六丁六甲费周折.造成九齿玉垂牙,铸就双环金坠叶.身妆六曜排五星,体按四时依八节.短长上下定乾坤,左右阴阳分日月.六爻神 ...
- python中强大优雅的列表推导表达式
推导表达式其实就是简化一些循环判断操作等 生成一个数字1-10的列表,可以有多少种方法? >>> l = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] > ...
- Codeforces550C(SummerTrainingDay01-H)
C. Divisibility by Eight time limit per test : 2 seconds memory limit per test : 256 megabytes input ...
- 【代码笔记】iOS-自定义选择框(高底强弱)
一,效果图 二,代码. ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewControl ...
- @EnableDiscoveryClient与@EnableEurekaClient 区别
Eureka依赖: <dependency> <groupId>org.springframework.cloud</groupId> <arti ...