zoukankan      html  css  js  c++  java
  • Python面向对象编程——引言

     
    1、类和实例:类是对象的定义,而实例是真正的事物。他存放了类中所定义的对象的具体信息
    关键字是class,后面紧跟着一个类名,随后是定义类的雷替代码。通常有各种各样的定义和声明组成。
    class newClass(base):
         'define neewClass class'
    类分为经典类和新式类。所以得新式类必须继承至少一个父类
    创建一个实例的过程称作实例化:aclass=newClass()
    2.方法:类的功能。在Python中,方法定义在类的定义中,但只能被实例所调用。调用一个方法的途径:(1)定义一个类(和方法),(2)创建一个实例 (3)用这个实例用调用方法
    例子:def aClass(object):
                  def printfoo(self):
                      print ('You invoked printFoo()')
    注意self参数,他在所有的方法声明中都存在,代表实例对象本身。
    3、创建一个类:
    class AddrBookEntry(object):
        'Address book entry class'
        def __init__(self,nm,ph):
            self.nm=nm
            self.ph=ph
            print ('Created instance for:',self.name)
        def updataPhone(self,newph):
            self.ph=newph
            print ('Updated phone# for:',self.name)
    4、创建类的实例:
    >>> bobi=AddrBookEntry('bobi','110')
    Created instance for: bobi
    >>> dier=AddrBookEntry('dier','123')
    Created instance for: dier
    5、访问实例属性:
    >>> bobi.nm
    'bobi'
    >>> bobi.ph
    '110'
    6、方法调用:
    >>> bobi.updataPhone('18800295576')
    Updated phone# for: bobi
    >>> dier.updataPhone('18721589896')
    Updated phone# for: dier
    >>> dier.ph
    '18721589896'
    7、创建子类:
    靠继承来进行子类化
     class EmplAddrBookEntry(AddrBookEntry):
        'Employee Address Book Entry class'
        def __init__(self,nm,ph,idnum,em):
            AddrBookEntry.__init__(self,nm,ph)
            self.empid=idum
            self.email=em
        def updateEmail(self,newem):
            self.email=newem
            print('Updated E-mail address for:',self.nm)
    8、使用子类:
    >>> jack=EmplAddrBookEntry('jack','2213445',11,'123@345.com')
    Created instance for: jack
    >>> jack.updataPhone('123')
    Updated phone# for: jack
    >>> jack.updateEmail('www@com')
    Updated E-mail address for: jack
    >>> jack
    <__main__.EmplAddrBookEntry object at 0x00000000032450F0>
    >>> jack.email
    'www@com'
  • 相关阅读:
    HDMI介绍与流程
    HDMI热插拔检测原理
    在AES标准规范中,分组长度、密钥长度的关系
    WORD-每5行添加一个行号
    FreeRTOS 调试方法(printf---打印任务执行情况)
    SELinux深入理解
    一文彻底明白linux中的selinux到底是什么
    云锵投资 2020 年 06 月简报
    ubuntu16.04 安装opencv-2.4.9
    Windows高DPI系列控件(二)
  • 原文地址:https://www.cnblogs.com/itdyb/p/5416523.html
Copyright © 2011-2022 走看看