(1)Python初学——类——属性
来源:互联网 发布:js获取padding的值 编辑:程序博客网 时间:2024/05/16 12:02
- 类的所有实例方法都必须至少有一个名为self的参数,并且必须是方法的第一个形参。self参数代表对象本身,在类的实例方法中访问实例属性必须要以self为前缀,但是在外部通过类名调用对象方法则需要显示为self参数船传值。
- 实例属性一般是在构造函数__init__中定义的,定义和使用时必须以self为前缀。类属性是在类中所有方法之外定义的。实例属性属于实例对象,只能通过对象名访问,而类属性属于类,可以通过类名和对象名访问。
- Python中比较特殊的是,可以动态的为类和对象增加成员,这一点和许多面向对象的程序设计语言不同,是Python动态语言的一种体现。
- 私有属性是为了数据封装和保密而设置的属性,一般只在类的成员方法使用访问,Python支持一种特殊的方式来从外部访问类的私有成员。
- _xxx:这样的对象叫做保护成员,不能用‘from module import *’导入,只有类对象和子类对象能访问这些成员。
__xxx__:系统定义的特殊成员。
__xxx:类中的私有成员,只有类对象自己能访问,子类对象也不能访问,但在对象外部可以通过‘’对象名._类名__.xxx''这样的特殊方式来访问。Python中不存在严格意义上的私有成员。
- 在构造函数中,程序对公有变量设置了初始值(初始化),可以在构造函数中使用参数,通常使用参数来设置成员变量(特别是私有变量)的值。
术语解释:实例变量 = 实例属性=实例对象的属性 = 成员变量 ;类变量 = 类属性
- 静态变量:
静态变量或者静态方法与具体的对象没有关系,它只属于定义它的类。Python不需要显示地定义静态变量,任何公有变量都可以作为静态变量使用,访问静态变量的方法如下:
类名.静态变量。虽然可以通过对象名访问静态变量,但是同一个变量,通过类名访问和通过对象名访问实例不同,互不干扰。
class A(object):
online = 0
def __init__(self):#构造函数,创建对象时A.online加1
a.online+=1
def__del__(self):#析构函数,释放对象时,A.online减1
a.online-=1
a = A()
a.online+=1
print a.online
程序首先创建了一个A的对象a,此时会执行一次构造函数,因此A.online的值等于1,然后程序执行a.online +=1,使用对象调用on林恩,此时不会影响静态变量的A.online的值,因此最后打印A.online的值时,结果为1.
阅读全文
0 0
- (1)Python初学——类——属性
- 兄弟连学python(1)——初学python
- 初学Python(一)——数据类型
- 初学Python(二)——数组
- 初学 Python — 列表遍历
- 自定义初学4——自定义属性
- Python初学(5)——Python语法规则
- Python初学(6)——Python的函数
- 兄弟连学Python(2)—python初学感受
- Python——类属性/实例属性
- Python——类属性/实例属性
- Python——类属性/实例属性
- Python——类属性/实例属性
- Python——类属性/实例属性
- Python初学笔记(1)——基于《Dive Into Python》5.4b版本pdf
- 初学python —— 备份文件脚本
- 初学python——菜鸟到入门
- Python初学——多线程Threading
- GIT 查看/修改用户名和邮箱地址
- SerialPort常用属性方法和事件
- springMVC事务回滚
- windows下让自己的程序调用caffe库(属性页+dll文件)
- 欢迎使用CSDN-markdown编辑器
- (1)Python初学——类——属性
- learn python the hard way EX4
- HTML input 标签 详细 事件 描述
- React:组件的生命周期
- copy构造函数的4个应用场景
- codeforces 827C
- Hololens入门之使用Custom Vision进行图片识别
- 记一次Spring MVC 一次请求,后台却访问两次的问题的解决方案
- 文章标题