Python面对对象

class Employee:

        'all employee' #类帮助信息,类文档字符串;可以通过ClassName.__doc__查看

        empCount = 0 #类变量,但是对象也可以访问

        def __init__(self,name,salary): //__init__为构造函数,self 代表类的实例,self 在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。self代表类的实例,而非类

                    self.name = name #实例变量,在类的构造函数中定义,是属于对象的变量

                    self.salary = salary

                   Employee.empCount+=1 #类变量可以直接访问

        def __del__(self): #析构函数

                    print "销毁"

        def displayCount(self): #实例方法

                   print("total employee %d" %(Employee.empCount))

        @classmethod

        def sayHi(cls): #类方法 (用classmethod声明),类方法的第一个参数cls代表类

            print "hi"

employee=Employee("yanhe","001")  //类的实例化

打印输出调试:

print Employee.empCount #输出1

print employee.empCount #输出1

print employee.__doc__  #打印类的信息

print employee.displayCount()  #或者Employee.displayCount(employee),输出total employee 1

print employee.name #输出yanhe

print Employee.sayHi() #输出"hi"


python类的继承:

                            class Child(Parent): # 定义子类Child继承于Parent

注意可以继承多个类:class A(B,C):


附:__xx__ :这种定义方法一般是系统定义的方法,比如: __init__()。

_xx:以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *

__foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容