Python类

使用class关键字创建。类的域和方法被列在一个缩进块中

类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值,Python会提供这个值。这个特别的变量指对象本身,按照惯例它的名称是self。

Python中的self等价于C++中的self指针和Java、C#中的this参考。

这也意味着如果你有一个不需要参数的方法,你还是得给这个方法定义一个self参数。

class Person:

def __init__(self, name):

self.name = name

def sayHi(self):

print 'Hello, my name is', self.name

p = Person('Swaroop')

p.sayHi()

注意sayHi方法没有任何参数,但仍然在函数定义时有self。

__init__方法在类的一个对象被建立时,马上运行。这个方法可以用来对你的对象做一些你希望的初始化 。注意,这个名称的开始和结尾都是双下划线。

__init__方法类似于C++、C#和Java中的 constructor

__del__方法与 destructor 的概念类似。

Python中所有的类成员(包括数据成员)都是 公共的 ,所有的方法都是 有效的 。

只有数据成员名称以 双下划线前缀 比如__privatevar,Python的名称管理体系会有效地把它作为私有变量。这样就有一个惯例,如果某个变量只想在类或对象中使用,就应该以单下划线前缀

继承

class childClass(parentClass) :

'''Represents a childClass.'''

def __init__(self, name, age, marks):

parentClass.__init__(self, name, age)

Python不会自动调用基本类的constructor,你得亲自专门调用它

原文地址:https://www.cnblogs.com/manhua/p/3848030.html