反射,魔法方法,单例模式
目录
1|01. 绑定方法
-
绑定方法就是在书写这个方法时,会有一个默认参数(作为第一个参数),绑定给类,这个参数就是
cls
,绑定给对象这个参数就是self
。 -
绑定方法的特殊之处:
谁来调用自己的绑定方法,就把谁当作第一个参数传给该方法。
但当类调用对象的绑定方法时,
self
就是一个普通的形参,需要传给他一个实参,对象调用类的绑定方法同理 -
对象的绑定方法的特殊之处:
由对象来调用,会将对象当作第一个参数传给该方法
-
类的绑定方法的特殊之处:
由类来调用,会将类当作第一个参数传给该方法
2|02. 类内部方法的装饰器
- 之前还讲过的有
property
,作用是让这个方法不用加括号就可以调用。让它看起来就像是一个数据属性。
2|11. classmethod
classmethod
就是一个装饰器。装饰类内部的方法,使该方法绑定来使用。
2|22. staticmethod
staticmethod
也是一个装饰器。装饰类内部的方法。使该方法既不绑定给类,也不绑定给对象,此时就是作为普通函数。
2|33. uuid模块
-
应用实例:
3|03.isinstance与issubclass函数
-
他们都是python内置的函数。
-
isinstance
(参数1,参数2)判断参数1是否是参数2的一个实例
-
issubclass
判断参数1是否是参数2的子类
4|04. 反射
- 反射就是通过字符串来操作类或者对象的属性
- 反射本质就是在使用内置函数,其中反射有以下四个内置函数:
5|05. 魔法方法
6|06. 单例模式
6|11. 什么是单例模式
- 单例模式:基于某种方法实例化多次得到实例是同一个
6|22. 为什么用单例模式
- 当实例化多次得到的对象中存放的属性都一样的情况,应该将多个对象指向同一个内存,即使用同一个对象,但通过传入不同的参数,让这个对象的属性值不同。
例如在一个程序运行时多个用户的注册,多个用户登陆等,都可以使用 。 - 使用单例模式可以减少内存占用
- 单例模式下,在程序的运行中,无论实例化多少个对象,这些对象用的都是第一次实例化产生的对象的内存地址。
6|33. 三种单例方式:
- 以下三种单例模式 , 推荐使用第二种(即
__new__
的单例模式) - 三种单例模式的区别:
第一种和第三种都是通过只调用一次类(即只进行一次类的实例化)的方式实现单例模式,第二种通过在类的定义时只产生一次空对象的方式实现单例模式,也就是说第二种无论调用多少次这个类都没有任何影响。
(1)类内部定义 类的绑定方法
(2)类内部通过__new__方法控制只创建一次空对象
- 这种方法使得产生的对象都是第一次实例化的对象,但每次的参数都是最后一次实例化对象时传入的参数。
(3)装饰器式的单例
__EOF__

本文作者:BigSun丶
本文链接:https://www.cnblogs.com/Mcoming/p/11663354.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/Mcoming/p/11663354.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!