python面向对象编程138讲_Python的面向对象编程,看这一篇就够了

面向对象:Object Oriented Programming,简称OOP,即面向对象程序设计。

类:Class,类是用来描述具有相同属性和方法对象的集合。

对象:Object,是类的具体实例。

举个例子,学生都有姓名和分数,姓名与分数就属于一样的属性,这里就能设置一个类,去记录学生的姓名和成绩。

说明一下属性和方法

属性:Attribute,用以描述所有对象公有的属性。

方法:Method,包括在类里面的函数,也叫类函数,区别于类之外的函数,用来实现某些功能。

通过关键词class来创建一个类class Student():

def __init__(self,name,score):

self.name = name

self.score = score

def out(self):

print("%s:%s"%(self.name,self.score))

必须完成类的实例化,才可以创建出类的具体的对象,并给它分配存储空间。因此说对象是类的一个实例。

接下来创建一个对象,仅需添加两行代码就能实现

Student1 = Student('Anny','100')

Student2 = Student('Mike','90')

类的私有属性和私有方法

类里面的私有属性和私有方法都是以双下划线__开头的,私有属性和方法不能在类的外部直接使用或访问。将score变为私有属性,然后print(Student.score),就会发现报错。但是调用show的时候不会报错,这是由于show是类里面的函数,因此能访问私有变量。

私有方法也是同样的道理,应该留心的是私有方法必须含有self参数并且将其作为第一个参数。

在面向对象的编程中,一般情况下是不会让外部类直接访问类内部的属性和方法,而是向外部提供一些按钮,对其内部的成员进行访问,以保证程序的安全性,这就叫封装。

@property

def scores(self):

print("该学生成绩为%s"%self.score)

加上装饰器之后不用加括号可直接调用。

类的继承

面向对象编程最有利的就是避免重复的代码,也就是将一段代码重复使用,继承算是一种方法。

先定义一个基类或者父类,再通过class 类名(父类):pass创建子类,这样一来,子类获得了父类的所有属性和方法,这种现象就叫做继承。

再写段代码,用Schoolmember表示父类,姓名和年龄是所有人的属性,然而老师有工资(salary)这个专有属性,学生有分数(score)这个专有属性

透过代码能够得出在创建子类的过程中,要手动调用父类的构造函数__init__来完成子类的创建。

在子类中调用父类的方法时,要加上父类的类名前缀,且必须带self参数变量。例SchoolMember.tell(self)。

要是子类调用了每个方法或者属性,Python会先在父类中寻找,找不到就会去子类寻找。

在实际的项目中,一个子类可以继承多个父类。

芝麻IP代理软件支持电脑客户端,安卓手机、ios手机,模拟器,虚拟机,云手机一键更换全国IP地址,欢迎访问: www.zhimaruanjian.com 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值