YS_20190729_Python

面向对象

1.多态:

面向对象的三大特征之一,即一个对象可以通过不同的形式呈现。
注意:isinstance()这种函数在开发中一般不会使用。
面向对象的三大特性:
封装- 确保对象中的数据安全
继承- 保证了对象的可扩展性
多态 - 保证了程序的灵活性

2.类中的属性和方法:

①类属性,直接在类中定义的属性是类属性,类属性可以通过类或类的实例访问到。但是类属性只能通过类对象来修改,无法通过实例对象修改。
②实例属性,通过实例对象添加的属性属于实例属性,实例属性只能通过实例对象来访问和修改,类对象无法访问修改
③实例方法,在类中定义,以self为第一个参数的方法都是实例方法。实例方法在调用时,Python会将调用对象作为self传入;实例方法可以通过实例和类去调用。当通过实例调用时,会自动将当前调用对象作为self传入;当通过类调用时,不会自动传递self,此时我们必须手动传递self。
④类方法:在类内部使用 @classmethod 来修饰的方法属于类方法。类方法的第一个参数是cls,也会被自动传递,cls就是当前的类对象。类方法和实例方法的区别,实例方法的第一个参数是self,而类方法的第一个参数是cls。类方法可以通过类去调用,也可以通过实例调用,没有区别。
⑤静态方法:在类中使用 @staticmethod 来修饰的方法属于静态方法。
1)静态方法不需要指定任何的默认参数,
2)静态方法可以通过类和实例去调用.
3)静态方法基本上是一个和当前类无关的方法,它只是一个保存到当前类中的函数.
4)静态方法一般都是一些工具方法,和当前类无关.
一个类中类方法、属性方法、静态方法 哪个先执行?
静态代码块先执行-----静态方法执行—静态属性----- 非静态方法/属性

3.垃圾回收:

所谓的垃圾回收就是讲垃圾对象从“内存中删除”。在Python中有自动的垃圾回收机制,它会自动将这些没有被引用的对象删除,Python也是自动交给Pytho解释器去自动回收垃圾----def del(self)。

4.特殊方法:

str()这个特殊方法会在尝试将对象转换为字符串的时候调用。
repr()这个特殊方法会在对当前对象使用repr()函数时调用,它的作用是指定对象在 ‘交互模式’中直接输出的效果。

5.模块:

模块化:模块化指将一个完整的程序分解为一个一个小的模块。
模块化的优点:① 方便开发② 方便维护③ 模块可以复用
在一个模块中引入外部模块
① import 模块名 (模块名,就是python文件的名字,注意不要.py
② import 模块名 as 模块别名
③可以引入同一个模块多次,但是模块的实例只会创建一个
④import可以在程序的任意位置调用,但是一般情况下,import语句都会统一写在程序的开头
⑤也可以只引入模块中的部分内容:from 模块名 import 变量,变量,例如from m import Person.name
⑥也可以为引入的变量使用别名:from 模块名 import 变量 as 别名,例如from m import test2 as new_test2

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值