• 1.25 Python知识进阶


     封装

    示例代码:

    class Role(object):
      count = 0
      
    def __init__(self,name,role,weapon,life_value=100,money=15000):

         self.name = name

         self.role = role

         self.weapon = weapon

         self.life_value = life_value

         self.money = money

         self.__heart = "normal"

       def shot(self):

         print("shooting...")

       def got_shot(self):

         print("ah...,I got shot...")

         self.__heart = 'Die'

       def buy_gun(self,gun_name):

         print("just bought %s" %gun_name)

    r1 = Role('Alex','police','AK47’) #生成一个角色

    r2 = Role('Jack','terrorist','B22’) #生成一个角色

    分析代码

      构造方法:函数__init__称为构造函数,或构造方法,用于执行类的实例的初始化工作。

      析构方法:函数__del__称为析构函数,或析构方法,用于实现销毁类的实例所需要的操作。通过del语句,可强制销毁一个对象实例。

      实例方法:又称为公有方法。类方法的第一参数一般为self,这种方法称为实例方法。像shot函数都是实例的方法,如果写成__shot就是私有方法。变成私有方法,就不能直接访问,但是可以在其他方法中访问。

      属性:类的数据成员是在类中定义的成员变量,用来存储描述类的特征的值。

      实例属性:通过self.变量名定义的属性,称为实例属性,也称为实例变量,成员属性,成员变量。示例代码中,在构造方法__init__中定义的self.name等就是实例属性。

        初始化:

          一般在__init__方法中初始化

          self.实例变量名 = 初始值

        访问:

          在其他函数中访问:

          self.实例变量名 = 值  # 写入

          self.实例变量名     # 读取

          在通过对象实例访问:

          obj1 = 类名()        # 创建对象实例

          obj1.实例变量名 = 值  # 写入

          obj1.实例变量名     # 读取

      私有属性:通常,以两个下划线开头,但是不以两个下划线结束的属性称为私有属性。私有属性不能直接被访问,但是可以在方法中访问。示例代码中,self.__heart就是私有属性,只能在方法中进行调用。

        强制访问方法:r1._Role__heart 就可以在外部访问到

      类属性:声明属于类本身的变量,即类的属性,也称为类变量、静态属性,有的称它是公有属性。示例代码中,count就是类的属性

        初始化:

          类变量名 = 初始值

        访问:

          类名.类变量名 = 值  # 写入

          类名.类变量名     # 读取

    知识框架

     

  • 相关阅读:
    使用多线程生产者消费者模式实现抓斗图
    selenium+chrome抓取淘宝搜索抓娃娃关键页面
    mysql必知必会
    mongoDB高级查询$type4array使用解析
    并发服务器几种实现方法总结
    python的面向对象和面向过程
    lazarus,synedit输入小键盘特殊符号的补丁
    Delphi中静态方法重载还是覆盖的讨论
    python全栈开发_day4_if,while和for
    python全栈开发_day3_数据类型,输入输出及运算符
  • 原文地址:https://www.cnblogs.com/topspeedking/p/6913666.html
Copyright © 2020-2023  润新知