首页 > 编程语言 > 详细

python定义类的特性,引出面向对象

时间:2017-01-15 11:52:18      阅读:252      评论:0      收藏:0      [点我收藏+]

面向对象:可以解决更复杂的关系描述,一个对象可以有多个功能

面向过程:一步一步去走,去实施完成,适合一次性的任务。要是要处理复杂并且可重复利用的,就得用面向对象

比如,连接数据库,备份数据库,测试数据库如下图:

技术分享

面向对象: object oriented programing

下面举例说明类的特性:举例说明公有属性、私有属性、强制访问、安全访问

class Role(object):
    def __init__(self,name,role,weapon,life_value=100):
        self.name=name
        self.role=role
        self.weapon=weapon
        self.life_value=life_value
        self.__heart="die"  #私有属性对外部不可见
    def policemen(self):
        print("%s is policemen",self.name)
    def get_heart(self):
        return self.__heart

    def feitoo(self):
        print("%s is feitu",self.role)

    def shoot(self):
        print(self.name," is  shooting",self.__shoot)

    def get_shoot(self):
        print("%s is get_shooted",self.__heart)


r=Role("xiangxiao","policemen","AK47")
# r.feitoo()
# r.get_shoot()
#print(r.get_heart())
print(r._Role__heart)

上面的例子中了解到:

__init__:表示构造函数

self.name=name:表示属性,或者成员变量

self.__heart=”die”:表示私有属性,只允许内部访问

外部想要直接访问私有属性有2中办法:

1.直接在内部定义一个函数,来返回私有属性:

 

2.强制访问

 

3.类的公有属性:定义在类里面的属性,如:nationnality

技术分享

1.如果想调用一个私有函数的话,就得重新定义一个函数:

技术分享

上面就是单独写一个shoot2函数,发现r2调用的新定义的函数,r1还调用的原来的函数

python定义类的特性,引出面向对象

原文:http://www.cnblogs.com/pythonbz/p/6286800.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!