类(1)

类(1)


1、类与实例

(1)定义类

语法:

class  class_name(bases):
	'define MyNewObjectType class'
	class_suite

参数

class_name:要定义的类名;bases:可以是一个(单继承)或多个(多重继承)用于继承的父类。

object是“所有类之母”。如果定义的类没有继承任何其他父类,object将作为默认的父类

如果类不需要任何操作,可以定义为:

	class  class_name(object):
			pass

(2)实例化

创建实例:myFirstObject=class_name()

(3)定义方法

class  class_name(object):		#定义类
	def function():			#定义方法
		print  'hello world'

示例1

#定义类
class AddrBookEntry(object):
    'address book entry class'
    def __init__(self,nm,ph):       	#定义构造器
        self.name=nm                #设置name
        self.phone=ph                #设置phone
        print 'Created instance for:',self.name
    def undatePhone(self,newph):            #定义函数
        self.phone=newph
        print 'Updated phone# for:',self.name
#创建实例
john=AddrBookEntry('John Doe','408-555-123')
jane=AddrBookEntry('Jane Dot','4008-399-32')
#访问实例属性
print john.name
print john.phone
print jane.name
print jane.phone
#方法调用
john.undatePhone('919-8899-90')
print john.phone

结果



示例2

#定义类
class AddrBookEntry(object):
    'address book entry class'
    def __init__(self,nm,ph):       	#定义构造器
        self.name=nm                #设置name
        self.phone=ph                #设置phone
        print 'Created instance for:',self.name
    def undatePhone(self,newph):    	#定义函数
        self.phone=newph
        print 'Updated phone# for:',self.name
        
#创建子类
class EmplAddrBookEntry(AddrBookEntry):
    'Employee Address Book Entry class'  #员工地址薄类
    def __init__(self,nm,ph,id,em):
        AddrBookEntry.__init__(self,nm,ph)
        self.empid=id
        self.email=em
    def updateEmail(self,newem):
        self.email=newem
        print 'Update e_mail address for:',self.name
#创建实例
john=EmplAddrBookEntry('John Doe','408-555-123',42,'john@163.com')
jane=AddrBookEntry('Jane Dot','4008-399-32')
#访问实例属性
print john.name
print john.phone
print john.email
#方法调用
john.undatePhone('184-6589-0000')
john.phone
john.updateEmail('john@qq.com')
print john.email

结果


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值