标签:python
1.类的一般形式
创建类我们一般用class关键字来创建一个类,class后面跟类名字,可以自定义,最后以冒号结尾,如下所示:
class ClassName:
‘‘‘类的说明‘‘‘
类的内容
例子:
class Student(object):
‘‘‘This is a first class‘‘‘
name = "li"
sex = "male"
age = 27
def info(self):
print("%s, %s, %d" %(self.name,self.sex,self.age))
a = Student()
print(type(a))
print(a)
print(a.name)
print(a.sex)
print(a.age)
a.info()
结果:
<class ‘__main__.Student‘>
<__main__.Student object at 0x02552030>
li
male
27
li, male, 27
说明:
1).类中的变量、方法都可以调用,并且可以定义
2).object是一个超级类,所有类都继承这个类,是默认的
3) .类的说明需要3个引号括起来
2.类的构造器
__init__构造函数,在生成对象时调用。由于类可以起到模板的作用,因此,可以在创建实例的时候,把一些我们认为必须绑定的属性强制填写进去。通过定义一个特殊的__init__方法,在创建实例的时候,就把name,score等属性绑上去
例子:
class Student(object):
def __init__(self,name,sex):
self.name = name
self.sex = sex
def hello(self):
print(‘hello {0}‘.format(self.name))
a = Student("zhang","male")
a.hello()
结果:
hello zhang
3. 类的继承
继承,顾名思义就知道是它的意思,举个例子说明:你现在有一个现有的A类,现在需要写一个B类,但是B类是A类的特殊版,我们就可以使用继承,B类继承A类时,B类会自动获得A类的所有属性和方法,A类称为父类,B类陈为子类,子类除了继承父类的所有属性和方法,还可以自定义自己的属性和方法,大大增加了代码的复用性
多继承的格式:
class A: # 定义类 A
.....
class B: # 定义类 B
.....
class C(A,B): # 继承类 A 和 B
例子:
class parent(object):
name = "parent"
sex = "male"
def __init__(self):
print("I am: %s ,my sex is: %s" %(self.name,self.sex))
class child(parent):
def hello(self):
print("hello,child")
b =child()
b.hello()
结果:
I am: parent ,my sex is: male
hello,child
B继承A中的方法,先找子类,没有则找父类
例子:
class Animal(object):
def run(self):
print ‘Animal is running...‘
class Dog(Animal):
# pass
def run(self):
print ‘Dog is running...‘
class Cat(Animal):
# pass
def run(self):
print ‘Cat is running...‘
Dog().run()
Cat().run()
结果:
Dog is running...
Cat is running...
说明:当子类和父类都存在相同的run()方法时,我们说,子类的run()覆盖了父类的run(),在代码运行的时候,总是会调用子类的run()
标签:python
原文地址:http://huangzp.blog.51cto.com/12434999/1979464