123
项目
8
面向对象的程序设计
——银
行账户资金交易
定义一个员工类,并在该类中显示员工的姓名、工资和员工人数
class Employees:
'所有员工的父类'
emCount = 0
def __init__(self, name, salary):
self.name = name
self.salary = salary
Employees.emCount += 1
def displayCount(self):
print ("Total Employees %d" % Employees.emCount)
def displayEmployees(self):
print ("Name : ", self.name, ", Salary: ", self.salary)
● emCount 变量是一个类变量,它的值将在这个类的所有实例之间共享。可以在内部
类或外部类中使用 Employees.emCount 访问。
●
第一种方法__init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法,
当创建了这个类的实例时就会调用该方法。
● self 代表类的实例,而非类,self 在定义类的方法时是必须有的,虽然在调用时不必
传入相应的参数,类的方法与普通的函数只有一个特别的区别
—
它们必须有一个额外的
第一个参数名称,按照惯例它的名称是 self。
class Tests:
def prt(self):
print(self)
print(self.__class__)
t = Tests()
t.prt()
以上实例执行结果为:
<__main__.Test instance at 0x10d066878>
__main__.Test
从执行结果可以很明显地看出,self 代表的是类的实例,代表当前对象的地址,而
self.__class__则指向类,Tests()为构造函数。
任务
3
创建员工对象
在上述任务 2 中创建了员工类,就好比是我们已经设计好了汽车
的图纸,接下来就要利用这个图纸去造真正的汽车了,每一辆汽车就
好比是对象,而每一辆汽车都具有自己独特的属性,例如汽车的颜色、
8.3 创建员工对象