python的static方法和class方法


class Caculator(object):
    name = "caculator"
    def __init__(self, x, y):
        self._x = x
        self._y = y

    @property
    def add(self):
        return self._x + self._y

    @classmethod
    def class_info(cls):    #能夠被類和對象調用;入參為cls,只能夠訪問類的變量,不能夠訪問對象的變量.
        print("this is a" , cls.name)

    @staticmethod           #能夠被類和對象調用;但入參不能為self和cls,因此不能訪問對象和類的屬性
    def static_show(a, b):
        print(a, b)

if __name__ == "__main__":

cal = Caculator(1, 2)

Caculator.class_info()

cal.class_info()

Caculator.static_show(3, 4)

cal.static_show(3, 4)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM