Python 面向对象教程

Posted shujuxiong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 面向对象教程相关的知识,希望对你有一定的参考价值。

技术分享图片

技术分享图片

技术分享图片

技术分享图片

总结:函数式的应用场景 –> 各个函数之间是独立且无共用的数据。

 

 

面向对象三大特性

 

面向对象的三大特性是指:封装、继承和多态。

 

一、封装

 

封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容。小编推荐大家加一下这个群:103456743这个群里好几千人了!大家遇到啥问题都会在里面交流!而且免费分享零基础入门料资料web开发 爬虫资料一整套!是个非常好的学习交流地方!也有程序员大神给大家热心解答各种问题!很快满员了。欲进从速哦!各种PDF等你来下载!全部都是免费的哦!只为帮助大家快速入门,所以小编在群里等你们过来一起交流学习呢!

 

所以,在使用面向对象的封装特性时,需要:

 

  • 将内容封装到某处
  • 从某处调用被封装的内容

 

第一步:将内容封装到某处
技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

练习二:游戏人生程序

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

d1=Dog(‘胖子家的小瘦狗‘)
d1.eat()
技术分享图片

技术分享图片

那么问题又来了,多继承呢?
  • 是否可以继承多个类
  • 如果继承的多个类每个类中都定了相同的函数,那么那一个会被使用呢?
1、Python的类可以继承多个类,Java和C#中则只能继承一个类
2、Python的类如果继承了多个类,那么其寻找方法的方式有两种,分别是:深度优先广度优先
技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

进阶篇

技术分享图片

技术分享图片

技术分享图片

由上述代码可以看出【普通字段需要通过对象来访问】【静态字段通过类访问】,在使用上可以看出普通字段和静态字段的归属是不同的。其在内容的存储方式类似如下图:

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

2、属性的两种定义方式
属性的定义有两种方式:
  • 装饰器 即:在方法上应用装饰器
  • 静态字段 即:在类中定义值为property对象的静态字段
装饰器方式:在类的普通方法上应用@property装饰器
我们知道Python中的类有经典类和新式类,新式类的属性比经典类的属性丰富。( 如果类继object,那么该类是新式类 )
经典类,具有一种@property装饰器(如上一步实例)
技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

6. __dict__
类或对象中的所有成员
上文中我们知道:类的普通字段属于对象;类中的静态字段和方法等属于类,即:
技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 

 

以上是关于Python 面向对象教程的主要内容,如果未能解决你的问题,请参考以下文章

Python 面向对象教程

python面向对象教程:类和实例

python 高级教程:面向对象。

Python3入门教程||Python3 面向对象||Python3 标准库概览

简明python教程七----面向对象的编程(下)

Python编程教程:面向对象之高级特性!