以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。以双下划线开头的 __foo 代表类的私有成员以双下划线开头和结尾的 __foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造 ...
分类:
编程语言 时间:
2020-07-07 13:41:29
阅读次数:
69
public class Demo4_Buffered(){ public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader (new FileRead("xxx.tx ...
分类:
其他好文 时间:
2020-06-22 22:59:27
阅读次数:
74
实例 析构函数 __del__ ,__del__在对象销毁的时候被调用,当对象不再被使用时,__del__方法运行: 实例 注意:通常你需要在单独的文件中定义一个类, Python 子类继承父类构造函数说明:https://www.runoob.com/w3cnote/python-extends- ...
分类:
编程语言 时间:
2020-06-22 17:05:48
阅读次数:
68
1、slots简介 Python中,每个类都会有实例属性,默认情况下Python会使用一个字典去保存一个对象的实例属性(对象.dict),这样就会让这个实例化的对象没有任何的限制,可以随意的给对象做任何属性设置,为了避免这个问题,我们可通过__slots__来限制实例对象的属性。 1、所以slots ...
分类:
编程语言 时间:
2020-06-20 00:46:52
阅读次数:
64
首先什么是特殊方法? 特殊方法从名称上看都是以双下划线开头和结尾的函数,他们通常不需要直接调用,当python解释器遇到某些句法时会调用对应的特殊方法。 比如obj[key]在python解释的时候就会调用__getitem__方法,这种常用的写法又等同于obj.__getitem__(key)。 ...
分类:
编程语言 时间:
2020-06-13 00:34:15
阅读次数:
64
今日内容 嵌套 特殊方法:__init__ type/isinstance/issubclass/super 异常处理 内容回顾 #函数执行def login(): passlogin()#执行函数#类创建对象,调用方法class Account: def login(self): passobj ...
分类:
编程语言 时间:
2020-06-02 13:13:00
阅读次数:
54
构造方法与析构方法是对象中的两个特殊方法,即对象的生命周期。 构造方法:对象创建完成后第一个被对象自动调用的方法。 析构方法:对象在销毁之前最后一个被对象自动调用的方法。 所以通常使用构造方法完成对象的初始化工作,使用析构方法完成对象在销毁前的清理工作。 构造方法: ①一个类只能有一个构造方法! ② ...
分类:
Web程序 时间:
2020-04-25 12:26:29
阅读次数:
62
面向对象 1. mro是什么? 2. 什么是C3算法? 3. 列举面向对象中带双下划线的特殊方法。 4. 双下划线和单下划线的区别? 5. 参考下面代码片段 6. 静态方法、类方法、实例方法的区别 7. 口述with的用法,如果自己的类需要支持with语句,应该如何书写? 8. 实现一个单例Sing ...
分类:
其他好文 时间:
2020-04-12 12:26:37
阅读次数:
71
class Time60(object): def __init__(self,hr,min): self.hr=hr self.min=min def __add__(self, other): #__add__ 相当于加:+操作符 return self.__class__(self.hr+ot ...
分类:
编程语言 时间:
2020-04-05 09:35:52
阅读次数:
66
编程代价高昂的主因: 不安全 的编程 方式 C++引入 (constructor),对象被创建时自动调用的特殊方法 Java也采用构造器,同时引入 构造器确保初始化 通过构造器,确保每个对象在被操作之前都能得到初始化 构造器为什么要与类的名称相同? 任何名字都可能与类的某个成员名称 相冲突 需要让编 ...
分类:
编程语言 时间:
2020-03-28 18:24:45
阅读次数:
72