《python爬爬乐》入门篇:python面向对象设计看这一篇就够了

前言

学面向对象对于python语言来说,其实并没有那么重要,因为我们一般使用python开发一些小功能。但以后说不定会开发一些中大型项目,所以面向对象设计还是要了解一下滴。

面向对象编程就记住一句话:万事万物皆对象!

https://i-blog.csdnimg.cn/blog_migrate/5d90c40801a3fc50c890c29e004d1f9a.png

大哈:“小四,今天午餐想吃什么?”

小四:“想吃的东西可多啦,两块面包,一块鸡胸肉,还要几片生菜,还想吃土豆条,最好是刚炸出来的,还想喝点什么汤之类的”

大哈:“小四,你四不四撒啊!你就说你想吃鸡肉堡套餐不行么 !(#‵′)凸”

小四:“呃,好吧,我确实想吃开封菜的鸡肉堡套餐...”

相信大家从上面的例子可以简单理解什么是面向对象了吧。

初学者可以这样理解:把一些有关系的数据和行为放在一起,就变成了对象。

 

分析

接下来我们来一一解释面向对象的一些概念:类、对象、属性、方法、封装、继承、多态,通过这些概念再来理解什么是面向对象。

上面的示例中,有哪些对象呢?我们来简单分析一下。

鸡肉汉堡套餐对象:包含的属性有套餐名字、套餐内容(双层鸡肉汉堡,薯条,蘑菇汤)、套餐价格等

鸡肉汉堡:包含的属性有原料列表(一个面包,一片鸡肉,三片生菜,5克沙拉酱等)、重量、生产日期等

薯条:包含的属性有重量、包装袋、口味、单价等

蘑菇汤:包含的属性有份量(大份、中份、小份)、单价、口感等

第五个:......

有没有发现,我们可以这样一直分析下去,可以列出无穷无尽的对象!

那就对了,这就是面向对象编程分析。实际开发中我们不会这样不断分解,没必要把一个对象分解成原子。

一般我们会根据功能来分析具体有哪些对象,如果有一些对象具有相同的属性和方法,我们会把它们归于一类。具体如何分析就是我们接下来的内容了。

 

基本概念介绍

一、类:类就是对一组具有相同属性和方法的对象的抽象,简单说就是一个概念,比如“女神”就是一个类,这是一个抽象的概念,“女神”有多高?身材有多好?年龄多大?这些属性是各种“女神”所共有的属性,但具体的属性值就没办法确定了。

女神类

 

二、对象:对象是类的一个实例,简单说就是一个真实存在的具体的实物。比如有些胖友的女神就很具体。如下图中的几位女神:

林姐姐
苍井姐姐
贾大姐

 

三、属性:

性就是对象的特征,是名词。比如上面的女神都有身高、体重、姓名、年龄和三围等·

林姐姐:身高-173cm,体重-54kg,姓名-林志玲,年龄-43,三围-保密。

苍井姐姐:身高-155cm,体重-45kg,姓名-苍井空,年龄-34,三围-保密。

贾大姐:身高-166cm,体重-保密 ,姓名-贾玲,年龄-35,三围-保密。

四、方法:

方法就是对象的行为,是动词或动名词。

林姐姐有游泳()、跑步()和拍广告()等方法。

苍姐姐有拍写真()、拍电影()等方法。

贾大姐有演小品()、唱歌()等方法。

五、封装:

封装很好理解。最近双十一刚过,大家都有收到很多的快递吧,快递用包裹就是一种典型的封装行为。一个包裹里面可以包含很多物品。

封装最大的好处就是隐藏细节数据,只预留使用者关注的功能接口就OK了。

比如电视机从使用者的角度,我们只关心这些功能:开机、关机、换台等。这些功能如何实现的,对应的电子电路图是什么样的,使用了什么样的电路板等,我们完全不关心,也不用关心。

六、继承:

继承也很好理解。龙生龙,凤生凤,老鼠的儿子会打洞。当然,如果出现了下图这种不合理的场景,就要问问隔壁老王了。

七、多态:

面向对象中的多态是指,不同对象的相同行为,有不同的执行效果。比如你让不同的葫芦娃执行“放大招()”这个方法,对应的效果就不一样。

今天就先介绍这些基本概念吧。以后需要使用面向对象设计时,我们再介绍对应的python语法。

  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值