模板方法模式 定义一个操作中算法的骨架,而将这些步骤延迟到子类中, 模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。 不变部分的算法封装到父类中实现,而把可变部分算法由子类继承实现,便于子类继续扩展。 ...
分类:
其他好文 时间:
2019-08-02 11:19:25
阅读次数:
89
""""""class BaseCat(object): """ 猫科基础类""" tag = '猫科动物' def __init__(self, name): self.name = name def eat(self): print('吃东西')class Tiger(BaseCat): """ ...
分类:
编程语言 时间:
2019-08-02 10:55:33
阅读次数:
81
添加一个成员方法。eat方法 确定方法,方法名和参数列表 定义一个有参数的方法 getMethods Person没有父类所以直接继承的就是Object类。输出了Person自己的方法和Object这个父类的的方法 方法支持暴力反射 获取方法的名称 获取类名 输出全类名 ...
分类:
编程语言 时间:
2019-08-02 10:31:48
阅读次数:
99
1、多态的实现 创建Person类: 创建学生类: 创建测试类: 2、向上转型和向下转型 向上转型:当有子类对象赋值给一个父类引用时,便是向上转型,多态本身就是向上转型的过程,向上转型之后,只能调用子父类共有的内容。例如: 向下转型:一个已经向上转型的子类对象可以使用强制类型转换的格式,将父类引用转 ...
分类:
其他好文 时间:
2019-08-01 20:18:40
阅读次数:
179
1 继承(1) 2 类是对对象的抽象,继承是对某一批类的抽象,从而实现对现实世界更好的建模。 3 提高代码的复用性! 4 extends的意思是“扩展”。子类是父类的扩展 5 6 父类:超类、基类、 子类:派生类 7 小结: 8 继承的作用:通过继承可以简化类的定义,实现代码的重用 9 10 子类继... ...
分类:
其他好文 时间:
2019-08-01 09:34:47
阅读次数:
77
C++虚函数: 仅在定义父类成员函数的函数原型前加关键字virtual,子类如果重写了父类的虚函数那么子类前的virtual 关键字可写可不写,但是为了代码具有可读性,最好还是加上virtual关键字。 子类重写父类虚函数的条件: 子类的函数名称与父类的虚函数名称相同,参数列表也要相同,返回值也相同 ...
分类:
编程语言 时间:
2019-07-31 21:42:22
阅读次数:
128
isMemberOfClass - 调用者必须是传入的类的实例对象才返回YES- 判断调用者是否是传入对象的实例,别弄反了,如 [s1 isMemberOfClass:p1] ,意思是s1是否是p1的实例对象- 去去父类递归查找判断 源码: 有两个方法,一个类方法,一个对象方法,两者区别: - 实例 ...
分类:
其他好文 时间:
2019-07-31 18:39:50
阅读次数:
110
父类是Write 需要抛出异常 声明为它的父类IO异常也是可以的 不指定 默认就是utf-8格式的 两个汉字 6个字节 GBK格式 打开文件的位置用文本打开 ...
分类:
编程语言 时间:
2019-07-31 01:34:53
阅读次数:
157
1、面向对象特点:封装、继承、多态。2、构造函数 = 构造器 + 原型对象;(1)父类function UserClass(name,age,word){ //构造器 constructor this.name=name; this.age =age; this.word =word; this.i ...
分类:
其他好文 时间:
2019-07-31 01:32:25
阅读次数:
104
__dict__:要是对象的话返回的是一个对象自身的实例属性、不包括类的属性;要是类的__dict__则不包括父类的属性,只包含自身类属性【方法、类变量】,不包括实例属性。正是这样、每个实例的实例属性才会互不影响。 dir():返回的是对象的所有属性、包括父类的属性 python一切皆对象、类本身也 ...
分类:
编程语言 时间:
2019-07-31 01:32:01
阅读次数:
163