• 实例方法、静态方法、类方法


    一、实例方法

    二、静态方法特点

    1. 静态方法无须传入self参数,因此在静态方法中无法访问实例变量。
    2. 在静态方法中不可以直接访问类的静态变量,但是可以通过类名引用静态变量。

    三、类方法特点

    1. 与静态方法一样,类方法可以使用类名调用类方法。
    2. 与静态方法一样,类成员也无法访问实例变量,但是可以访问类的静态变量。
    3. 类方法需要传入本类的cls参数。
     1 # -*- coding:utf-8 -*-
     2 
     3 class Person:
     4     grade = 1
     5 
     6     def __init__(self, name):
     7         self.name = name
     8 
     9     def sayHi(self):  # 加self区别于普通函数
    10         print('Hello, your name is?', self.name)
    11 
    12     @staticmethod  # 声明静态,去掉则编译报错;还有静态方法不能访问类变量和实例变量
    13     def sayName():  # 使用了静态方法,则不能再使用self
    14         print("my name is king")  # ,grade,#self.name
    15 
    16     @classmethod  # 类方法
    17     def classMethod(cls):
    18         print("class method")
    19 
    20 
    21 p = Person("king")
    22 p.sayHi()
    23 p.sayName()
    24 p.classMethod()
    25 Person.classMethod()
    26 
    27 #输出
    28 Hello, your name is? king
    29 my name is king
    30 class method
    31 class method

    参考:python基础教程,P82页

    作者:今孝

    出处:http://www.cnblogs.com/jinxiao-pu/p/6755674.html

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

  • 相关阅读:
    python网络编程,requests模块
    python操作excel
    python加密模块hashlib
    python操作redis
    python操作mysql
    python常用模块3(os和sys模块)
    python打开网站
    python常用模块2
    python模块简介
    mac下开发——环境心得(杂项,持续性更新)
  • 原文地址:https://www.cnblogs.com/jinxiao-pu/p/6755674.html
Copyright © 2020-2023  润新知