python之面向对象之封装详解编程语言

今天我们终于进入了面向对象,今天做一下面向的封装的总结

#面向对象的封装 
#这里定义了一个类,名称为Role,object是所有类的父类 
class Role(object): 
    #这里是定义实例的属性,这个实例的属性分别有name,role,wepon,life_value,如果我们通过类Role去创建一个实例的时候,就必须传递这几个参数 
    #需要说的时候,这里的属性是实例的属性,而不是类的属性,具体关于类的属性,我们在后面介绍 
    def __init__(self,name,role,wepon,life_value): 
        self.name = name 
        # name = name 
        self.role = role 
        self.wepon = wepon 
        self.life_value = life_value 
    #这里定义一个函数,这个函数是类的函数,我们通过这个类创建的任何一个实例都可以调用这个函数,这里的self就是调用这个函数实例,gun是调用这个函数 
    #我们需要传递的一个参数,因为我们是通过实例来调用类的方法,所以这里的self参数python默认就帮我们处理了 
    def buy_gun(self,gun): 
        print("名称为[%s]的人买了[%s],我的角色是[%s]" %(self.name,gun,self.role)) 
        #改变实例中的变量的值 
        self.wepon = gun 
 
 
#通过类Role来生成两个实例 
p1 = Role("p1","Police","B10","10") 
t1 = Role("t1","Terror","B11","100") 
 
#创建出来的实例就可以调用它的类Role的方法bug_wepon 
p1.buy_gun("C10") 
print(p1.name) 
print(p1.role) 
print(p1.life_value) 
print(p1.wepon) 
# 名称为[p1]的人买了[C10],我的角色是[Police]
# p1
# Police
# 10
# C10


t1.buy_gun("C11") print(t1.name) print(t1.role) print(t1.life_value) print(t1.wepon)
# 名称为[t1]的人买了[C11],我的角色是[Terror]
# t1
# Terror
# 100
# C11

#self就是实例本身,也就是我们上

  

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/20896.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论