python新手入门(六)

序列分装了数据,函数封装了代码语句,类封装了属性和方法;类是对象的抽象,对象是类的实例化,python中万物皆对象,我们将拥有共同特征的对象归为一类,将他们的特点抽象成属性,行为动作抽象成方法。比如一个人类,属性有肤色(color),身高(hight),体重(weight),行为有游泳(swim),打篮球(basketball);

我们创建了一个人类,并创建p1和p2两个人,他们都为黄皮肤,170cm,80kg,p1在游泳,p2在打篮球;

人类了肤色,身高,体重不可能都是一样的,各有各的差异;学过java的同学一定会想到构造函数,python的构造函数又是怎样呢;

如图中所示,我们对Person类进行了升级,有了自己的构造方法,可以随意修改一个人的肤色,身高,体重了;

面向对象编程肯定会涉及到共有,私有属性,python属性默认为共有,私有属性只要在属性名前加两个下划线__color,color就成为了私有属性;

虽然都是人,但人与人之间也有差异,比如中国人的特点是说汉语,美国人的特点是说英语,但无论如何都是人;类的继承,中国人属于人类的子类,人类就是中国人的父类,子类继承父类的全部属性和方法;

图中两个类Chinese和American都继承了Person类,所以他们拥有了肤色,身高,体重的属性,并拥有了游泳和打篮球的技能,同时他们有各自的特点,就是语言不同;

面向对象编程的特点就是封装,继承和多态;将属性和方法封装便成了一个类,一个类继承自另一个类,子类拥有了父类的全部属性和方法,就是继承,子类可以对父类的属性和方法进行扩展,即为多态,而多态的实现分为,重载和重写;

图中American重写了父类的basketball()方法,将在“打篮球”改为“喜欢打篮球”,又将basketball()方法重载,加入了name;

(重写,重载是java中的概念)

多重继承,一个子类可以继承多个父类,中国人即属于人类,也属于动物类

p1及拥有Person中的swim()方法,同时也拥有Anamal中的eat()方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值