码迷,mamicode.com
首页 > 编程语言 > 详细

python 面向对象六 类属性和实例属性

时间:2017-12-17 18:22:08      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:class   相同   根据   删除   style   name   div   def   pre   

一、实例属性

Python是动态语言,根据类创建的实例可以任意绑定属性。

 1 >>> class Student(object):
 2 ...     def __init__(self, name):
 3 ...         self.name = name   # 每个实例必须的属性
 4 ... 
 5 >>> s = Student(Jack)
 6 >>> s.score = 90    # 任意绑定属性
 7 >>> s.name
 8 Jack
 9 >>> s.score
10 90

二、类属性

直接在class中定义属性,这种属性是类属性,归Student类所有。

 1 >>> class Student(object):
 2 ...     name = Jack   # 类属性
 3 ... 
 4 >>> Student.name        # 获取类属性
 5 Jack
 6 >>> s = Student()
 7 >>> s.name              # 获取类属性
 8 Jack
 9 >>> s.name = Mike     # 添加实例属性
10 >>> s.name              # 获取实例属性
11 Mike
12 >>> Student.name        # 获取类属性
13 Jack

在编写程序的时候,千万不要对实例属性和类属性使用相同的名字,因为相同名称的实例属性将屏蔽掉类属性,但是当你删除实例属性后,再使用相同的名称,访问到的将是类属性。

python 面向对象六 类属性和实例属性

标签:class   相同   根据   删除   style   name   div   def   pre   

原文地址:http://www.cnblogs.com/gundan/p/8052481.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!