python在设计之初就是面向对象的脚本语言,面向对象深深的刻在了python的基因里,因此python中创建一个对象是非常容易的,今天我们来学习下python的对象。
- 类
类是一个描述具有相同属性和方法的对象的集合,比如学生这个名词就描述了这样一个群体,单个的学生属于学生类,但是他们都有同样的属性和方法。
- 类变量
类变量定义在对象的方法体以外,是整个对象方法的公用变量,相当于在对象中是全局的,每个函数都可以使用。
- 数据成员
数据成员是类变量或者实例变量, 用于处理类及其实例对象的相关的数据。
- 方法重写
子类可以从父类继承方法,但是如果需要,你可以重新定义这个函数的功能,从而覆盖由父类继承而来的方法。
- 继承
继承即派生类由基类派生的过程,类似于人类社会中的继承,子类可以继承父类的方法,成员变量等等。
- 实例化
实例化即创建一个类的实例,比如现在有个对象,名称是学生,那么具体到某个人,小明,小明是一个学生,也即学生的一个实例。
- 方法
对象中用来实现某种功能的函数,还是学生举栗子,我们可以给学生对象定一个方法叫学习,学习这个函数就是学生的一个方法。
创建类
关键字class用来创建一个类,语法如下
class Student:#定义类名
studentName #类成员
studentFunc#类方法
接下来我们创建一个员工的类
empCount是类变量,这个类的各个实例化对象都可以使用他,如果想要在外部访问这个变量可以使用Employee.empCount。
__init__方法是特殊的方法,叫做构造函数,当对这个对象进行实例化时,这个方法就会被调用。
创建实例
"创建 Employee 类的第一个对象"
emp1 = Employee("Zara", 2000)
"创建 Employee 类的第二个对象"
emp2 = Employee("Manni", 5000)
完整代码如下
#!/usr/bin/python # -*- coding: UTF-8 -*- class Employee: '所有员工的基类' empCount = 0 def __init__(self, name, salary): self.name = name self.salary = salary Employee.empCount += 1 def displayCount(self): print "Total Employee %d" % Employee.empCount def displayEmployee(self): print "Name : ", self.name, ", Salary: ", self.salary "创建 Employee 类的第一个对象" emp1 = Employee("Zara", 2000) "创建 Employee 类的第二个对象" emp2 = Employee("Manni", 5000) emp1.displayEmployee() emp2.displayEmployee() print "Total Employee %d" % Employee.empCount