zoukankan      html  css  js  c++  java
  • 【Python】学习笔记九:面向对象拓展

    调用类的其他信息

    在定义方法的时候,必须有self这一参数。这个参数表示某个对象,对象拥有类的所有性质。那么我们可以通过self,调用类属性

    class people(object):
        action = 'nod'
        def show_action(self):
            print(self.action)
        def nod_100th(self):
            for i in range(10):
                self.show_action()
    
    oliver = people()
    oliver.nod_100th()

    这里有一个类属性nod(点头),在方法show_action中,通过self.action,调用了该属性的值。


    还可以以相同的方式调用其他方法,方法nod_100th()中调用了方法show_action()

    __init__方法

    __init__()是一个特殊方法(special method)

    如果在类中定义__init__()这个方法,创建对象时,Python会自动调用这个方法,这个过程叫初始化

    class people(object):
        sex = 'man'
        def __init__(self):
            print(self.sex)
    
    oliver = people()

    屏幕打印结果:

    man

    此处我们只是创建了对象,但是__init__()方法被调用了

    对象的性质

    一个类有许多个属性,例如:人这个类,性别就是其中最明显的一个属性,性别分为:男,女

    性质的值也是随着对象的不同而不同的

    class people(object):
        def __init__(self,var_age):
           self.age=var_age
        def printage(self):
            self.age
    
    oliver = people(100) #在此处,100作为参数传递给__init__()方法的var_age变量
    print(oliver.age)
    oliver.printage()
    对象的性质也可以被其它方法调用,调用方法与类属性的调用相似,正如在printage()方法中的调用。
  • 相关阅读:
    ios之单例模式
    ios之申请后台延时执行和做一个假后台的方法
    ios之gcd浅析
    ios之归档demo
    ios之快速领会VFL的demo
    ios之网络异常与正常视图的切换
    POJ 2280 Amphiphilic Carbon Molecules 极角排序 + 扫描线
    linux pthread
    directdraw显示yuv422(yuy2)
    nginx高效学习方法
  • 原文地址:https://www.cnblogs.com/OliverQin/p/7681882.html
Copyright © 2011-2022 走看看