5 -----クラスとオブジェクトクラスメソッド、スタティックメソッド

図1に示すように、一般的な方法:オブジェクトにバインドされ、任意の装飾なしでは、オブジェクトは自動的に(自己)関数に渡されます

図2に示すように、クラスメソッド:メソッドが飾られ、自動的にクラス(@classmethod CLS関数の最初のパラメータとして)を、オブジェクトが呼び出すことができます

3、静的メソッド:メソッドは、自動的に自己またはCLSを渡しません、それは普通の関数、クラス、およびオブジェクトを呼び出すことができるで飾ら@staticmethod

 HOST = ' 127.0.0.1 ' 
PORT = 3306 
DB_PATH = R&LT ' C:\ユーザー\ Administratorの\ PycharmProjects \テスト\ OOP \ TEST1 \ DB ' 

クラスのMysql:
     DEF  __init__ (セルフ、ホスト、ポート):
        self.host = ホスト
        self.port = ポートは
    @classmethod 
    DEF :(CLS)from_conf
         印刷(CLS)
         の戻り CLS(HOST、PORT) 初期化するために、構成ファイルから
    DEF :楽しい(自己を)
         印刷' )(self.funを'、セルフ)
    @staticmethod 
    DEF :fun_static()
         印刷' フォームfun_static ... ' 

を印刷)(Mysql.from_conf()
 印刷' -------- ' 
コネティカット = Mysql.from_conf()
コネティカットを。 from_conf() オブジェクトも呼び出すことができますが、最初のパスは、呼び出しが正常に行くことはありませんが、デフォルトパラメータクラスのまま
印刷を-------- 
、M = MySQLの(HOST、PORT)
のMysql .fun(メートル)
を印刷' -------- ' を印刷((m.fun_static))

 

おすすめ

転載: www.cnblogs.com/cc-world/p/12649741.html