ディレクトリ
組み合わせ
組み合わせは何ですか
オブジェクトクラスの組み合わせは、別のクラスのオブジェクトを指すいくつかのプロパティが含まれています
なぜの組み合わせを使用
- 冗長コードの組み合わせは、問題のクラスの間で解決するために使用されています
使用
class People:
def __init__(self,name):
self.name=name
def info(self):
print(f'{self.name}')
class City:
def __init__(self,city):
self.city=city
def info(self,who):
print(f'{who.name}在{self.city}')
no1=People('JJ')
city=City('shanghai')
no1.where=city
no1.where.info(no1)
パッケージ
パッケージとは何ですか
メタファー:
シール:例えば、最大密封された袋
意味:例えば、袋をインストールするのに十分小さい子猫の山を、
これは、オブジェクトにカプセル化されたパッケージのプロパティ(特性やスキル)のパイルを指し
目的かもしれ保存されたデータオブジェクトをフェッチすることである。「」マナーは、プロパティを取得します
なぜパッケージ
オブジェクトのプロパティによる容易なアクセスのためのパッケージの目的を得ることができる。マナー特性を
どのようにパッケージ化します
特長:変数---「属性データ
スキル:機能---「メソッドプロパティ
クラス内で、属性が(実用的特性)スタックを定義し、
オブジェクトを介して。プロパティ属性=
アクセス機構
アクセスメカニズムとは何ですか
__の始まりを属性するすべてのプロパティとメソッドは、Pythonの内部に隠される、クラス内で定義され、アクセスクラス内のプロパティの先頭__間の外側を任せることはできません。
例えば:__名= 'JJ'
アクセス機構の目的
プライバシーとプロパティのプロパティ束が容易との間に外部の、隠された、外部のないコールでアクセスすることはできません
利点:論理的に重要なデータは、これにより、データのセキュリティを確保し、より厳格得
インターフェース:プライバシーインターフェース内のビジネス・ロジックをやって、インタフェースパッケージを経由して属性を、そのデータは、呼び出し元に返されます
注意:Pythonで、ちょうどばらつきを行い、__財産の初めにクラス内で、プロパティへのアクセスの制限を強制することはありません
直接アクセスのために、呼び出しが名前を変形させることができます
class Foo:
_name='jj' # --->_类名__属性名
プロパティ
プロパティとは何ですか
Pythonのデコレータの方法は、主に内部クラスを使用することに、構築されました
なぜプロパティを使用します
彼の目的を使用して、()defのメソッド名()内部クラスメソッドであること(デフ方式)となります。
オブジェクトは、メソッドを呼び出すと、オブジェクトメソッド()が対象となる。方法(それは普通の関数のように見えます)
使い方
@property
ポリモーフィズム
何多型であります
多型は同じものの、様々な形態をいいます
ポリモーフィックオブジェクト
また、ポリモーフィズム、継承、多態性として知られている多型は、プログラム内の現れであります
多型の目的は、オブジェクトの様々な異なるタイプのを可能にする同様の機能の場合には、同じ名前のメソッドを呼び出すことです。
親クラス:統一基準のセットを定義します
サブクラス:統一基準の親に従ってください
ポリモーフィック究極の目標
ユーザーがより簡単に同じ関数functionメソッドを呼び出すことができるようにするために、書かれた仕様サブカテゴリを統一
継承によって
注意:Pythonで、それゆえ抽象親クラスのサブクラスの標準セットに従うことが必須ではありません
抽象クラス
何ですか
BACモジュール:フルネームabstract_class
の目的
サブクラスは親クラスの必須標準のセットに従わなければなりません。
使い方
輸入ABC
アヒルタイプ
タイプのアヒルは何ですか
現在のオブジェクトの状況が何だったかわからないですが、あなたはアヒルのように見える、あなたはアヒルの一種であります
Pythonでは、それは必須の制限抽象型定義されたサブクラスの使用を推奨していませんが、クラスは鴨の種類に従うことを推奨しています
継承:
カップリングには、プログラムチェック拡張性が高すぎます
アヒルの種類:
低カップリング、強力なスケーラブルな手順