Python面向对象
梳理Python面向对象相关知识
傻瓜搬砖人
每天进步一点点
展开
-
python-abc模块(抽象类)
1.抽象类即该类不能被实例化对象,该类只是定义了一些接口,用于扩展。2.定义抽象类import abc# 定义抽象类 设置metaclass = abc.ABCMetaclass Base(metaclass=abc.ABCMeta): # 使用abc.abstractmethod 装饰器定义抽象方法 @abc.abstractmethod def fun1(self): pass @abc.abstractmethod def fun2(self): pass3.使用抽原创 2021-06-06 12:47:46 · 1237 阅读 · 0 评论 -
python中魔法方法
一、魔法方法: 在python中 有一些方法以两个下划线开头和结尾,这些方法会在合适的时机进行调用(解释器自行调用),我们把这一类方法称为魔法方法。二、类中常用的魔法方法:''' __new__()、__init__()、__del__()、__str__()、__repr__() __setattr__、__getattr__、__delattr__、__getattribute__ __eq__、__ne__、__lt__、__g...原创 2021-05-23 16:41:25 · 532 阅读 · 0 评论 -
python类方法&静态方法&重写&重载&对象信息
一、类方法与静态方法 class Person(object): #构造方法 def __init__(self): pass #类方法 @classmethod def fun1(cls): # cls 为当前类 pass #静态方法 @staticmethod # 对参数没有要求 def fun2(): pass''' 说明: 1.静态方.原创 2021-05-16 00:11:56 · 706 阅读 · 0 评论 -
python单例设计模式
1.通过py文件创建''' 由于python在导入模块的时候,会生成与该模块对应的.pyc 文件,后续多次导入实质是加载这个唯一的.pyc 文件 根据这一特性,可设计单例类'''#PERSON.pyclass Person(object): passp = Person()#test.pyimport PERSON.p#这里的这个对象 p 是唯一de2.通过__new__() 创建''' 根据类属性 和__new__() 方法屏蔽构造方法的特性 ''原创 2021-05-14 00:18:34 · 62 阅读 · 0 评论 -
python面向对象之封装&继承&多态
一、封装'''面向对象中的封装:将属性属性私有化,通过设置共有方法来设置和获取该属性的值 1.python 中属性私有化:在属性前添加两个下划线 2.私有属性的操作接口可以自定义set属性()和get属性()方法 3.python则通过@property装饰器实现 私有属性的操作接口'''class Person(object): def __init(self,name,age): self.__name = name;原创 2021-05-13 00:41:10 · 117 阅读 · 0 评论 -
python-面向对象基础-类属性&实例属性-构造&析构
一、类的定义'''class 类名(): 类体'''class Person(object): pass二、类中成员的定义:class Person(object): #属性 name = "tom" age = 18 height = 180 # 方法 def eat(self,food): print(self.name + "eating" + food) def run原创 2021-05-07 23:31:58 · 363 阅读 · 0 评论