09_pythonのクラスとオブジェクト

2981 ワード

1.pythonにおけるクラスとオブジェクトの基本概念
(1)pythonのクラス
  • 類は同じ特徴と行為を持つ事物の総称であり、抽象的であり、
  • を直接使用することはできない.
  • クラスの特徴を属性
  • と呼ぶ.
  • 類の行為を方法
  • と呼ぶ.
    (2)pythonのオブジェクト
  • オブジェクトは、クラスによって作成された特定のもの
  • である.
  • オブジェクトがどのオブジェクトによって作成されたかは、このクラスの属性とメソッド
  • を持つ.
    2.pythonクラスの設計
    (1)クラス設計の概要
    オブジェクト向けのプログラミング思想を用いて開発を行う場合,まず需要を分析し,プログラムに含まれるべきクラスを特定すべきである.クラスを設計するには、次の3つの点を考慮する必要があります.
  • 類名:アルパカ法を用いて命名される.
  • クラスの属性(特徴)
  • クラスのメソッド(動作)
  • (2)クラス設計基本構文(メソッドのみ、属性なし)
    class   :
    
        def   1(self,     ):
            pass
            
            
        
        def   2(self,     ):
            pass
            
            

    (3)オブジェクト構文の作成
         =   ()

    (4)参照
  • オブジェクトを作成すると、変数は依然として参照(オブジェクトの実際のメモリが格納されているアドレス)であり、つまり変数はオブジェクトデータを参照します.
  • print関数を使用して変数名を印刷する場合、デフォルトで印刷されるのは、この変数に格納されているアドレス(16進数)
  • です.
    (5)オブジェクトの属性設定
    クラスの外部では . = を使用すると、オブジェクトに属性を追加できますが、推奨されず、プログラムがエラーになりやすいです.
    (6)selfパラメータ
  • selfはjavaのthisに相当し、誰(どのオブジェクト)がこの方法を呼び出したのか、このselfは誰の参照なのか.
  • メソッドを呼び出す場合、プログラマはselfパラメータ
  • を渡す必要はありません.
    (7)オブジェクトの属性にアクセスし、オブジェクトを呼び出す方法
  • クラス内部(クラスのメソッド内部)では、self.を使用してオブジェクトの属性にアクセスし、オブジェクトを呼び出す方法
  • を使用することができる.
  • クラスの外部で .アクセス属性およびメソッド
  • を使用することができる.
    3.dir内蔵関数
    pythonは、以前に出会った変数、関数、データを含むすべてのデータがオブジェクトであるオブジェクト向けのプログラミング言語です.
    検証方法:
  • / の後に.と入力し、TABキーを押すと、iPythonはオブジェクトが呼び出すことができる をプロンプトします.
  • は、内蔵関数dirを使用して / に渡され、オブジェクト内のすべての属性およびメソッドを表示できます.

  • 下記の__ __形式はPythonが提供する内蔵方法/属性で、よく使われる内蔵方法です.
    __new__()  #     ,      
    __init__() #       ,      
    __del__()  #          ,      
    __str__()  #         ,print      

    注意:
  • オブジェクトを破棄する前に何かをしたい場合は、使用を考慮してください.del__()メソッド.オブジェクトのライフサイクルは、作成から破棄までの期間です.
  • オブジェクトのライフサイクル内で、オブジェクトのプロパティにアクセスし、オブジェクトのメソッドを呼び出すことができます.
  • オブジェクトの参照を印刷する場合、デフォルトではそのオブジェクトのアドレスが印刷されます.このオブジェクトの関連コンテンツ情報を印刷するには、__を使用します.str__()方法この対象を改造する.このメソッドは文字列を返さなければなりません.

  • 4.オブジェクトの作成プロセス = ()でオブジェクトが作成されると、次の操作が自動的に実行されます.
  • オブジェクトにメモリ領域を割り当てる(オブジェクトを作成する)
  • オブジェクトの初期値(初期化メソッドを呼び出す__init_())
  • を設定する.
    5.属性、プライベート属性、プライベートメソッドの定義、初期化
    (1)オブジェクトの属性を定義する
  • __init__()メソッド内部でself. = を用いる属性
  • を定義することができる.
    (2)オブジェクト作成時の初期値の設定
    開発では,オブジェクトの作成と同時にオブジェクトの属性を設定したい場合,__init__()メソッドを改造することができる.
  • 設定したい属性値を__init__(self, 1, 2...)メソッドのパラメータ
  • として定義する.
  • メソッド内部でselfを使用する.属性=パラメトリック受信外部伝達パラメータ
  • オブジェクトの作成時に ( 1, 2...)を使用して
  • を呼び出す.
    (3)プライベート属性とプライベートメソッドの定義
  • 実際に開発された場合、一部のメソッドまたはプロパティは外部オブジェクトにアクセスされたくなく、本オブジェクトの内部でのみ使用され、これらのメソッドまたはプロパティをプライベートメソッドおよびプライベートプロパティに設定することができます.
  • 定義方法:属性またはメソッドを定義するときに、属性名またはメソッド名に下線を2つ追加し、プライベート属性またはメソッドを定義します.