携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第20天,点击查看活动详情
0 环境
- 编辑器:pycharm或者vscode
- 系统版本:windows10
- python版本:3.9.6
1 特性/特点
面向对象的特点:
- 封装
- 继承
- 多态
封装,我不想给你看到它具体细节是什么(隐藏起来),但是我还想调用它,那么需要通过它的一些规则,然后才能获取到,我们想要的内容,说白了就是,我们常用的手机把它看作是封装的话,我要是想听歌,声音太小了,用它暴露出来的规则,就是声音调大小的按钮,当然用主机机箱更能说明这点,本来没有机箱,也是可以运行,但是以防进灰太多或者说不小心碰到了主板或者扯到了线,我现在加个机箱外壳,将我的主板固定在机箱外壳中,然后重新布线,最后用盖子盖起来,也就是封装起来,但我还是要用它,开机打游戏,听歌,插u盘的哇,机箱外壳已经暴露出来一些必须的接口或者按钮啥的,对于主板来说它更安全了,对使用者来说,也没多大影响。
继承,一对夫妻生下来了一个儿子,儿子不仅继承了父母的基因,正常也继承了父母的财产。
多态,同样是人,但有的人喜欢音乐,有的人喜欢极限运动,有的人喜欢舞蹈。。。
2 类的定义
但凡说道面向对象,基本会脱口而出的单词,class,或者有人喜欢说类。说到类,就会想到,比如常见的语言,java,c#,python,c++,js等等。但是面向对象不一定没有类就不是面向对象了,比如go语言。
回想之前,我们模拟获取数据库的数据(比如django的orm,自动帮我们组织好了数据的格式字段-值),是使用namedtuple的方式,有么有更好的展现方式呢,有的,就是使用类的方式。
3 总结
当我们知道了,面向对象的三个特征,以及以后会讲到的类。我的理解就是它能根据我们的需要,帮我们把数据整理的更好。