オブジェクト指向プログラミング:短いOOP。
これは、プログラミングのアイデアです。OOPオブジェクトは、プログラムの基本単位として、オブジェクトは、関数データと動作データを含みます。
Pythonでは、すべてのデータ型をオブジェクトとして扱われ、それはまた、カスタムオブジェクトことができます。カスタムオブジェクトのデータ型は、クラスのオブジェクト指向のクラスの概念です。
注:オブジェクト指向プログラミング言語に属していC ++、ルビー、PythonやJavaの
これは、言語Cのオブジェクト指向言語をサポートしていません。
クラスとインスタンス:
カテゴリー:抽象テンプレート、物事のクラスのいずれかと同じ特性を持ちます。
あるカテゴリー:①静的---属性(機能)--- ---変数②動的メソッド(振る舞い)----機能
通常の資本で始めタイプ、classキーワード:クラスを定義します。
オブジェクト-----クラスから継承されたクラスを表します
すべてのクラスであるオブジェクトクラスを使用するには、適切なクラスの継承は、存在しない場合は通常クラスを継承します
クラス学生(オブジェクト):
パス
例:ある特定の「オブジェクト」から作成クラスは、各オブジェクトが同様であり、単一のデータのそれぞれは異なっていてもよいです。
クラスの例には、抽象的な概念であり、例としては、クラスの特定の例としては、具体化されます。
インスタンスを作成します。バー=学生として実装クラス名+()で()
)(現在はインスタンス変数がbar.name =学生属性に結合するのは自由です
テンプレートクラスが役割を果たすことができるので、したがって、あなたは、私たちはそのバインドを埋めるために強制的に信じている属性の一部をインスタンスを作成することができます。作成した特別法により_Int_は、名前、スコアとに結び付けられ、他のプロパティを置きます。
_int_方法を使用すると、インスタンスを作成し、あなたが空にすることはできませんパラメータと一致している必要があり渡されたパラメータは_int_法を可決したが、自己は、Pythonインタプリタは、独自のインスタンス変数に渡します渡す必要はありません。
デフ学生(オブジェクト):
デフ_int_(自己、名前、スコア):
self.name =名前
self.score =スコア
操作の例:1 -変数クラス属性の内部---
2 - メソッドのクラスの関数内部---
3 - )(インスタンスT1 =タイガーを作成
静的およびインスタンスのプロパティ:
また、全体のクラスに属するクラスのプロパティとして知られている1 - 静的プロパティ-----
使い方----①クラス。②インスタンス属性。プロパティ
2 - 初期化方法_init__に定義されている-----インスタンス属性
一般的に指定したのインスタンスを作成するとき
ただ、インスタンスを作成---デフ_init(自己):初期化メソッドがコール確かだろう
自己の代わりに言葉だけではなく、キーワードは - 交換することができますが、交換はお勧めしません!デフォルトではできません。
ID(自己)
プロパティ---唯一のインスタンス属性の例
この自己自身の例
静的およびインスタンスメソッド:
1-- -----静的メソッドは、クラスのクラスに属するインスタンス化クラス----方法/インスタンスメソッドする必要がない、直接呼び出すことができます。
@stacticmethod修正のみ修正aに続きます
2 - インスタンスメソッド利用自己方法の----- ----例があります。
乱数を取る:ランダム輸入randintから
印刷(randint(0,5))----- 012345ランダム閉じ間隔を取ります
時間処理:インポート時
1970からの印刷(time.time())----での第二の計数
継承:1 -継承には、複数の親クラスすることができ
サブクラス親クラスとの間の多型を反映 - 2 - リライタブル
3 - 親クラスを呼び出すために、上書きした場合には
スーパー(SouTiger、S1).roar()
スーパー(クラス名のサブクラス、サブクラス名のインスタンス).roar()
4 - 私有財産に属し__name
クラスの独自の方法があります:
①__int__コンストラクタ関数は、オブジェクトが生成されたときに呼び出されます
②__del__あなたは、オブジェクトがデストラクタをリリースしているときに使用されます
③__repr__印刷変換
④__add__追加操作
保存操作⑤__sub__
⑥__call__関数呼び出し
⑦長さを得る__len__
⑧__mul__乗算
⑨__mod__剰余演算
⑩__pow__乗算