Pythonのオブジェクト指向の章のフェルト自己

Pythonのオブジェクト指向プログラミングの思考

学んだオブジェクト-オブジェクトが客観的世界に存在するオブジェクトである必要があり、世界全体のものが対象となり得ます。彼は一般化、オブジェクト指向技術は、組織構造から客観的世界をシミュレートするための方法であると言います。このプログラミングのアイデアを理解し、私の主観的な経験ではなく、それとの間に明確な違いはありません、私は、私が探求していきますその後の研究では、6ヶ月間のプログラミングに接触していたので、おそらく、プロセス指向プログラミングを感じます。
オブジェクト指向の概要1.
(1)目標
例えばヒトなどの性別、身長、犯人オブジェクトの動的な部分、などのオブジェクトは、静的および動的な部分に分割され、静的部分は、「属性」と呼ばれるオブジェクト自体の特性を指すが、歩くことができます、実行しています。
物理的性質と同じタイプの挙動のクラスが呼び出され、それは、キャリアクラスの属性及びカプセル化オブジェクトの挙動です。私は......確率だけでなく、クラスではないクラスで学ぶことは非常に重要です後、私は他の言語を知らないことを理解し
、オブジェクト指向プログラミングは、カプセル化、継承やポリモーフィズム三つの基本的な特性を有しています。相違点は次のとおりです。

機能 コンセプト 効果
パッケージ これは、オブジェクトのカプセル化のキャリア属性や行動としてクラスを参照します 考え方は、クラスの内部データの整合性を保証するために、オブジェクト指向プログラミングの核心であります
継承 特定の属性や行動がありますが、サブクラスは親クラスのプロパティと動作を多重化 再利用を達成するための重要な手段であります
ポリモーフィズム 機能サブクラスに親クラスのオブジェクト サブクラスは、独自の特徴を持っていると効果がなしに達成することができ、親クラスの戦士を継承します

その後の研究では、私は非常に魔法の意味と効果、......のカプセル化、継承、ポリモーフィズムの予備的な理解してい
2.クラス定義との使用
、構文キーワードクラスを使用するクラスの必要性の定義を(なぜ、クラスで?)クラスクラス名:アプリケーション構文に続く名=クラス名は、()クラスのインスタンスを作成します。
あなたはPythonのクラスを作成した後、あなたは_作成できるのinit ()メソッドを、この本は、私はJavaのコンストラクタに似て研究し、コンストラクタはそれを呼び出しますと言います。このコンストラクタは、彼はこのように自分にパラメータを渡す必要はありませんインスタンスを作成し、プロパティとクラスで使用される方法と、自動的に渡された引数にアクセスして、最初のパラメータの必須の自己を作成します。しかし、なぜコンストラクタを定義する必要がありますか?私は混乱しています場所です。私は、この方法は、結合特性の例を作ることです学びました。
クラスのデータメンバとメソッドのメンバーの例。この方法の例は、単にクラスで定義された関数であるが、最初の引数は、自己でなければなりません。単にクラスで定義された変数であるデータメンバは、それがクラスおよびインスタンスのプロパティに分割され、プロパティクラスは関数の外に定義されたクラスの変数を意味し、インスタンス変数定義された属性は、クラス内の関数を指します。
最後に、クラス制限のアクセスがあり、個人的に、パッケージの能力によって証明されていると考えると考えることができます。私たちは前に、または単一下線付きのメソッド名を追加することができます属性
__foo__として、終了または二重下線; __fooとして、二重の下線__;例えば_fooとして、。

タイプ それはのタイプを示します 効果
シングル下線 これは、保護の種類を表し、 唯一のクラス自体とそのサブクラスのアクセスを許可
二重下線 それはプライベートなタイプを表し クラス自体のアクセス方法の定義のみ
インクルーシブ二重下線 つまり、特別なメソッドの定義 不明

3.プロパティ
、我々は方法で@propetryができる上記特性に加えて、プロパティに変換されます。このプロパティは、計算するために使用することができ、メソッド名のプロセスによって直接アクセスすることができます。形式は次のとおりです。

//@property
    def name(self):
        body

この方法を通して、私たちはまた、属性がアクセス制限を達成するための私有財産であるセキュリティ・メカニズムを、追加することができます。
4.継承
、継承されたクラスや基本クラスが親と呼ばれるオブジェクト指向プログラミング、新しいクラスは、次の形式を通じて継承された子クラスまたは派生クラス、呼び出されます。

//class name(基类):
    body

継承を使用する場合は、基本クラスのメソッドが適用されないサブクラスであるならば、我々は我々の要求まで、このメソッドを書き換える必要があります。自動的にサブクラスで基底クラスのコンストラクタを呼び出さない、()サブクラスで基底クラスのコンストラクタ関数を呼び出し、スーパーを使用する必要があります。
**概要:大まかPythonオブジェクト指向プログラミング学習部、オブジェクト指向プログラミングの考え方は、まだ明確では十分ではありません。いくつかの関数やクラスの定義について、そして何の説明が本に与えられていない、全体が不十分である把握。マルチ実際の戦闘を提案し、理解と知識の応用を深めます。最後に、この章では、私に与え気持ちは魔法と神秘的です。

おすすめ

転載: www.cnblogs.com/trainking-star/p/12232587.html