クラス オブジェクトとインスタンス オブジェクト
簡単な理論: (推奨学習: Python ビデオ チュートリアル)
クラス オブジェクトは、類似の属性とメソッドを持つオブジェクトを 1 つのクラス オブジェクトに要約および抽象化します。類似の属性とメソッドをいくつか定義できます。異なるインスタンス オブジェクトがクラス オブジェクトの属性とメソッドを参照するため、重複を減らすことができますコードのレートです。
インスタンス オブジェクトはインスタンス化されたオブジェクトとも呼ばれ、抽象的なものではなく、オブジェクトのクラス内の特定のオブジェクトです。
比喩の理解:
ちょっとわかりにくい方もいると思いますので、ここでは比喩を使って説明しますので、ご理解いただければ幸いです。まず、Python では「すべてがオブジェクトである」ということを理解する必要があります。個人的な理解:
クラス オブジェクトは「フルーツ」のバスケットのようなものです。バスケット内のフルーツが繰り返されない場合、バスケット内の「フルーツ」は同じクラスに属し、誰かと同じように抽象的です。 「果物をください」と言ったとき、最初の反応は「何の果物?」になるはずなので、それは不確かです。
インスタンス オブジェクトは、かごの中の「リンゴ」と同様、特定のオブジェクト、つまりインスタンスです。誰かがあなたに「リンゴをください」と言ったと思います。どの果物を選ぶかはおそらく選択したくないでしょう。
class Main_class_dll(): def __init__(self): dllName = "SessionConnector.dll" dllABSPath = os.path.dirname(os.path.abspath(__file__)) + os.path.sep + dllName self.dll = cdll.LoadLibrary(dllABSPath) self.session_id='' def int_create_(self): self.dll.Init.restype = c_bool sign = self.dll.Init() def Create_Session(self,ip,port): self.dll.CreateSession.argtypes=[c_char_p,c_char_p] #输入参数的格式 self.dll.CreateSession.restype = c_int; #输出参数的格式 self.session_id = self.dll.CreateSession(ip,port); def send_recv(self,buf): time.sleep(2) self.dll.SendSessionMsg.restype = c_bool; self.dll.SendSessionMsg.argtypes=[c_int,c_char_p,c_uint] ret = self.dll.SendSessionMsg(self.session_id, buf, len(buf) + 1); self.dll.RecvSessionMsg.argtypes=[c_int,c_char_p,c_uint,c_int] self.dll.RecvSessionMsg.restype = c_bool; recv_buf = create_string_buffer(1024); ret = self.dll.RecvSessionMsg(self.session_id, recv_buf, 1024, 3000); self.dll.DestroySession.restype = c_bool; ret = self.dll.DestroySession(self.session_id); return recv_buf.value
クラス オブジェクトは、クラス名によって直接表現できるオブジェクトです。2 つをサポートします。操作、属性の直接使用、およびインスタンス化。クラス属性を使用するには、クラス名.属性を直接使用します。クラス メソッドを使用するには、以下に示すように、オブジェクトをインスタンス化し、オブジェクト名を self に割り当てて使用する必要があります。
class test: data = 1 def __init__(self): self.property=0 def test2(self): print 'hello' if __name__=='__main__': t = test() print test.data print t.data print test.test2 print t.test2() print test.test2(t)
Python 関連の技術記事の詳細については、Python チュートリアルを参照してください。 コラム 勉強しよう!
以上がPython クラス オブジェクトとインスタンス オブジェクトの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。