Python中的构造函数,析构函数,私有属性(方法),共有属性(方法)都是通过名称的约定来辨别的。

python中没有共有和私有权限修饰符,仅仅取决于属性的名称。如果函数,方法或者属性的名称以两个下划线开
始,则说明为私有类型。否则为共有属性。另,python中没有Java中的protect类型。
 
python中的属性分为静态属性和实例属性。
1.静态属性:可以直接被类调用的属性,也称类属性。
2.私有属性不能被实例化对象直接访问,对象访问私有属性的格式为:实例化对象名._类名__私有属性名
3.数据属性:不需要预先定义,当数据属性初次被使用时,即被创建并且赋值,可以被实例化对象调用。如
class Datattribute:
      pass
if __name__ == "__main__":
    data=Datattribute()
    data.name="我是没有预先定义的数据属性"
    print data.name
4.内置属性:类提供一些内置属性,用来管理类的内部关系。
 
# -*- coding: cp936 -*-
class BuiltAttribute:
    def __init__(self):
        self.built = 'wo shi fangfa"__init__"gou zao fangfa de shu xing'
 
class AttendBuilt(BuiltAttribute):
    def accept(self):
        self.acceptAttend = '我是方法accept中的属性'
 
if __name__ == "__main__":
    buildattribute = BuiltAttribute()
    attendbuilt = AttendBuilt()
    print '我是继承BuiltAttribute的属性',attendbuilt.built
    print '我是使用__bases__内置属性输出的基类组成的元组',AttendBuilt.__bases__
    print '我是使用__dict__内置属性输出的属性组成的字典',attendbuilt.__dict__
    print '我是使用__module__内置属性输出的类所在的模块名',attendbuilt.__module__
    print '我是使用__doc__内置属性输出的doc文档',attendbuilt.__doc__
    print '我是使用__name__内置属性输出的类名',AttendBuilt.__name__
 
 
类的方法
1.静态方法:使用@staticmethod或者staticmethod()来定义静态方法
  可以使用类和实例化对象来访问静态方法,但是不能直接访问私有方法。
2.类方法和类实例对象:使用@classmethod指令声明类方法,实例方法不需要使用指令来声明
3.内置方法:__init__(self,...)初始化对象,在创建新对象前调用,python中的构造函数
           __del__(self)释放对象,在对象被删除前调用,python中的析构函数
           __new(self,*args,**ked)实例的生成操作,在创建对象时被调用