#Python学习之7.高级部分:面向对象
_凡一
这个作者很懒,什么都没留下…
展开
-
Python学习之7.7继承
Python学习7.7 继承继承性最基本的作用就是避免我们定义重复的方法和重复的变量。Python允许多继承,也就是一个子类可以继承多个父类。1.继承的格式:首先,建议一个类写在一个模块中。如,在c4.py文件中定义了Human这个父类:class Human(): pass在c5.py文件中定义一个子类Student,它继承父类Human的格式如下:from c4 import Humanclass Student(Human):其中括号“()”里用来添加父类的名字。原创 2020-06-10 11:52:29 · 120 阅读 · 0 评论 -
Python学习之7.6成员可见性:公开和私有
Python学习7.6 成员可见性:公开和私有成员可以理解为变量和方法。(1).编程提倡的规范:一般来说,我们想修改一些类的特征的值,不应该通过直接访问的方式来改变变量的值;正确的方式应该为,对于所有类下面变量的更改应该通过方法来完成。(2).成员包括:公开成员(public):在类的外部可以对它直接赋值或读取。私有成员(private):在类的外部无法对它赋值或读取。在Python中,对于一个变量或者方法,名字前面没有双下划线“__”则认为是公开的;如果前面加上双下划线则认为是私有的。一个原创 2020-06-10 10:33:23 · 342 阅读 · 0 评论 -
Python学习之7.5静态方法
Python学习7.5 静态方法静态方法上面有一个装饰器@staticmethod,静态方法没有像实例方法和类方法一样强制默认传入一个指定的参数名。如下: @staticmethod def add(x, y): pass对象和类都可以调用静态方法,如下:class Student(): sum1 = 0 name = '哈哈哈' age = 0 def __init__(self, name, age): self原创 2020-06-09 15:08:59 · 133 阅读 · 0 评论 -
Python学习之7.4类方法
Python学习7.4 类方法类方法:用于操作类变量。关注的是类本身。类方法的定义:不同于实例方法,参数列表里的self改为cls(Python的建议,当然也可以改为别的。),并且在类方法上面加“@classmethod”装饰器,如下: @classmethod def plus_sum(cls): pass一个实例来演示类方法操作类变量:class Student(): sum1 = 0 name = '哈哈哈' age = 0原创 2020-06-09 14:46:22 · 141 阅读 · 0 评论 -
Python学习之7.3self与实例方法
Python学习7.3 self与实例方法1.如果我们要在类下面定义一个实例方法:实例方法:和实例(对象)相关联,是实例(对象)可以调用的方法。实例方法的规则:在方法的参数列表的第一个参数置为“self”。调用实例方法时,不需要传入“self”。self代表的是实例,而不是类。2.如何在实例方法内部访问实例变量?通过“self.实例变量”的形式。成功打印出结果:3.如何在实例方法内部访问类变量?法一:通过“类名.类变量”的形式。法二:通过“self.__class __.类原创 2020-06-09 14:08:31 · 310 阅读 · 0 评论 -
Python学习之7.2构造函数、类变量与实例变量
Python学习7.2 构造函数、类变量与实例变量1.构造函数的定义:构造函数的作用就是让类的模板生成不同的对象,初始化对象的属性。在类中定义的如下函数:def __init__(self): pass构造函数的调用是自动进行的,当你去实例化一个类时,Python会自动地帮助你去调用构造函数。构造函数可以显示地去调用,但是一般不这么做。构造函数默认返回类型为None,不能改变。2.类变量与实例变量:类变量:与类关联在一起的。实例变量:与对象关联在一起的。定义方法为s原创 2020-06-09 12:29:27 · 628 阅读 · 0 评论 -
Python学习之7.1类与对象
Python学习7.1 类与对象类最基本的作用就是在封装代码。1.类的定义:Python中使用关键字“class”来定义类,class后定义类的名字,名字后面加“()”,“:”后面通过缩进就是类体。在类的内部可以定义若干变量、函数。类下面的函数的参数列表一定要有self,在函数内部想要使用类中的变量,要用self.操作符来引用。如下:class Student(): name = '' age = 0 def print_file(self): print原创 2020-06-09 10:45:31 · 536 阅读 · 0 评论