写点什么

趁着课余时间学点 Python(十)面向对象的理解(前奏)

用户头像
ベ布小禅
关注
发布于: 34 分钟前


@[TOC]

前言

说起来这一篇本打算早就写的,因博主沉迷小说耽搁了


友情客串:大黄 —— 大一新生,对底层比较感兴趣,学习能力极强



终于要到紧张刺激的面向对象环节了,冲冲冲

正文

编程语言有面向对象(Java,Python)和面向过程(C 语言)之分,面向对象需要一些抽象的思维才行。


面向过程和面向对象有什么区别呢?


面向过程注重亲力亲为,意思也就是自己去干这件事;而面向对象更倾向于找个人给自己做事。


就拿那个老生常谈的例子来说吧——洗衣服:

面向过程

面向过程的洗衣服是:


  1. 把衣服拿到洗衣机旁边

  2. 放进去

  3. 等待

  4. 捞出来


等下一次洗衣服,你还得重复这些操作


而这就是函数式编程

面向对象

而面向对象则是:


  1. 创造一个机器人

  2. 教他如何洗衣服

  3. 把衣服拿到洗衣机旁边

  4. 放进去

  5. 等待

  6. 捞出来

  7. 让他去干活


等下一次需要洗衣服,就让机器人去干就行了


而面向对象绕不开的就是类和对象了,接着往下看吧

类和对象

看了上面的内容,应该已经对面向对象有了一定的理解吧,那么来看看什么是类和对象吧、

类是个抽象的东西,比如说人类,动物类,植物类,类是具有某些相同特征的事物的集合


那么如何定义一个属于我们的类呢?有三种方法,推荐使用第三种


# 定义一个Xxx类class Xxx:    代码块class Xxx():    代码块class Xxx(object):    代码
复制代码


这就成了


而类需要有属性,行为(方法)等东西


而属性就是在类里面的局部变量


而行为就是定义在类里面的函数

构造方法

而每个类都有一些默认的行为(方法),比如这个构造方法__init__


每个类都默认有这个构造方法,而 构造方法里面的内容是会在实例化的时候就运行的,也就是,你实例化的时候,就会调用这个__init__构造方法。


而对象是什么呢?

对象

对象是类的实例化,拿人类来说,人是一个类,而我们每个人都是人这个类的实例化对象。


看代码:


# 定义一个人类class 人(object):    代码块
# 实例化对象大黄 = 人()
复制代码


很明显,大黄是人这个类的实例化对象,换句话说,大黄是个人,在这句话里,大黄就是对象,人就是

用 Python 代码展示洗衣服例子

虽然 Python 是面向对象的语言,但是他也能面向过程编程,也就是函数式编程

面向过程洗衣服

话不多说,直接上代码


# 大家好,我是大黄,我要开始洗衣服了def 拿衣服():    print("把衣服拿到洗衣机旁边")
def 放进去(): print("把衣服放进洗衣机")
def 等待(): print("等衣服洗好")
def 捞出来(): print("把衣服捞出来")
拿衣服()放进去()等待()捞出来()
复制代码


运行结果:


面向对象洗衣服

代码:


class Robot(object):
def __init__(self): print("把衣服拿到洗衣机旁边") print("把衣服放进洗衣机") print("等衣服洗好") print("把衣服捞出来")
大黄 = Robot()
复制代码


运行结果:


结语

关于类的知识还有好多,今天只是让大家理解理解,以便于理解后面的知识。


兴趣是最好的老师,坚持是不变的真理。学习不要急躁,一步一个脚印,踏踏实实的往前走。每天进步一点点,日积月累之下,你就会发现自己已经变得很厉害了。


我是布小禅,一枚自学萌新,跟着我每天进步一点点吧!


说了这么多暂时也就够了,那么就告辞吧



发布于: 34 分钟前阅读数: 2
用户头像

ベ布小禅

关注

还未添加个人签名 2021.04.06 加入

平平无奇一萌新,默默无闻学IT,我是布小禅,一个网络专业却对编程及其感兴趣的小白! 目前在学python和Java,都很浅显,平时爱写点学习笔记。IT技术交流群:1039347613 也可以联系本人企鹅:2228660752 v:Smly0413

评论

发布
暂无评论
趁着课余时间学点Python(十)面向对象的理解(前奏)