我是靠谱客的博主 明理芝麻,这篇文章主要介绍继承,现在分享给大家,希望可以做个参考。

私有成员

复制代码
1
2
3
4
5
6
7
8
9
10
1. 概念: 私有成员 只能在 本类 内部使用 好处: 1.保护私有属性不被随意修改 2.提高封装性,将用户不需要使用的功能设置为私有, 用户只需要关心公有的. 语法: 在成员名前面加 两个 下划线, 这样的成员就是私有成员 self.__属性名 =def __方法名(self): pass

__del__方法

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
1. 调用时机: 对象空间 被销毁的时候, 自动调用 对象上的 __del__ 方法 class 类名(object): def __del__(self): # 对象被销毁的时候自动调用执行, 清理对象占用的资源 或者 明确对象的销毁时机 pass 2. 对象的销毁时机 a. 脚本执行结束, python占用的所有内存资源都被释放, 包括对象空间(python垃圾回收机制) b. 对象的没有被任何变量引用的时候, 对象被当做垃圾回收了 手动清空对象空间: del 对象变量 对象变量 = None

继承(重点)

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
1. 概念: 子类继承父类, 直接使用父类上的成员(属性和方法) 语法: class 子类名(父类名): # 默认继承 object # 子类新增的成员 pass 注意: 私有成员不能被继承 2. 继承的特征 a. 单继承 b. 多层继承 c. 多继承(骡子 同时继承 马和驴) d. 重写 概念: 子类中定义了与父类相同名字的成员, 即子类重写父类成员 属性重写 方法重写 方法重写: 当父类上的方法不满足子类需要,但是子类不得不使用该方法,则在子类中重写父类方法. 例如: 子类和父类 初始属性不同, 需要重写 __init__ 方法 调用父类上的方法: super().父类方法名([实参]) super(子类名,self).父类方法名([实参]) 例如: class Goods(object): def __init__(self,name,price): self.name = name self.price = price class Phone(Goods): def __init__(self,name,price,brand,size,color): #self.name = name #self.price = price super().__init__(name,price) # 调用父类上的方法 self.brand = brand self.size = size self.color = color e. 多态(了解): 继承,重写, 相同的方法实现的功能不同, 这就是多态 3. 查看对象信息 type(对象) : 查看对象的类名(类型) dir(对象) : 查看对象上的所有的属性(属性和方法都称为属性) isinstance(对象,类名): 判断对象是否是指定类的实例(对象)

类属性和实例属性

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
1. 实例属性: 对象上的属性 绑定方式: 动态: 对象变量.属性名 = 值 初始化方法中绑定: self.属性名 =2. 类属性: 类上的属性 绑定方式: 动态: 类名.属性名 = 值 在类中绑定: class 类名(object): 类属性名 = 值 访问: 类名.类属性名 作用: 将所有对象共享的属性设置为类属性, 所有的对象都能使用, 从而节约内存空间.

类方法和静态方法

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class 类名(object): # 实例方法 def 方法名(self,[形参]): pass # 类方法 @classmethod def 类方法名(cls,[形参]): # cls == class 调用的那个类 pass # 静态方法 @staticmethod def 静态方法名([形参]): pass # 调用 类名.类方法名() 类名.静态方法名()

最后

以上就是明理芝麻最近收集整理的关于继承的全部内容,更多相关继承内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(71)

评论列表共有 0 条评论

立即
投稿
返回
顶部