python封装思想_Python 入门 之 面向对象的三大特性(封装 / 继承 / 多态)

1、面向对象的三大特性

(1)继承

​继承是一种创建新类的方式,在Python中,新建的类可以继承一个或多个父类,父类又可以称为基类或超类,新建的类称为派生类或子类。

​在Python中实现继承非常简单,在声明类的时候,在类名后面添加一个小括号,就可以完成继承关系。单纯的从代码的层面上来看当两个类具有相同的功能或者特征的时候就可以使用继承。提取一个父类,这个父类中编写者两个类相同的部分,然后两个类分别去继承这个类就可以了,这样写可以避免写很多重复的功能和代码。

​继承的作用:

​减少代码的重用,提高代码可读性,规范编程模式

(2)封装:将一些代码或数据存储到某个空间中

​封装:隐藏对象的属性和实现细节,仅对外提供公共的访问方式

​好处: 将变化隔离;便于使用;提高复用性;提高安全性;

​封装原则:

​将不需要对外提供的内容都隐藏起来。

​把属性都隐藏,提供公共方法对其访问。

​封装使用:

​第一步: 将内容封装到某处

​第二步: 从某处调用被封装的内容

​通过对象直接调用

​通过self间接调用

​综上所述:对于面向对象的封装来说,其实就是使用构造方法将内容封装到对象中,然后通过对象直接或者self间接获取被封装的内容

(3) 多态:多种形态 ,python默认就是多态

​多态指的是一类事物有多种形态、

(4)鸭子类型 : 编程思想

​python中有一句谚语说的好,你看起来像鸭子,那么你就是鸭子。

" When I see a bird that walks like a duck and swims like a duck and quacks like a duck, I call that bird a duck."

中文:

“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。”

class A:

def call(self):

print("啊啊啊")

def walk(self):

print("一步两步")

def do(self):

print("左手右手一个慢动作")

class B:

def call(self):

print("啊啊啊")

def walk(self):

print("一步两步")

def do(self):

print("左手右手一个慢动作")

# 统一接口 ,归一化(规范)

def call(object):

object().call()

call(B)

call(A)

# A 和 B两个类完全没有耦合性,但是在某种意义上他们却统一了一个标准。

# 对相同的功能设定了相同的名字,这样方便开发,这两个方法就可以互成为鸭子类型。

python中 str,list,tuple中很多使用鸭子类型

str.index()

list.index()

tuple.index()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值