オブジェクト指向神の考え方を理解します

1、神のアイデアは、オブジェクト指向とは何でしょうか?

これは、オブジェクト指向プログラミングのアイデアです

プロセス指向プログラミングのアイデア:

  • プロセス指向プログラミングのアイデア:コアは、単語が行い、その後、行うことです、問題を解決するためのプロセスステップを指し、「プロセス」です!プログラムにこのプログラミングのアイデアをもとに、工場の組立ライン、思考の機械的な方法のように設計されています。

    長所:複雑な問題のプロセスを、このように単純化

    短所:確かに全身、スケーラビリティ、貧しい人々のプログラムに影響を与えます。

    注:プログラミングのアイデアは、任意の技術の単なるアイデア、独立しています。

  • 神のように彼自身に:注:オブジェクト指向プログラミングのアイデア!コアは、単語の「オブジェクト」であり、オブジェクトは「特性と技術」の組み合わせを指します。世界の創造、思考の「神」タイプの一種のように、アイデアをプログラミングで書かれたこのプログラムに基づいて。

    長所:高いスケーラビリティ。

    短所:プログラミングの複雑さは、プロセス指向よりも高くなっています。

2、初期クラスとオブジェクト

  • クラスとは何ですか

    クラスは、タイプにカテゴリを参照します。

    現実の世界 - ::上の両方の視点で - まず、目的の1つは、社会の文明の発展を通じて、クラスをまとめます。

    オブジェクトが実際に存在する、抽象クラスが生成されます。

    プログラムでは: - あなたは、その後で、クラスを持たなければならない「オブジェクトを生成するクラスを呼び出します。」

     在python中,用变量表示特征,用函数表示技能,因而具有相同的特征和技能的一类事物就是‘类’, 
  • クラスを定義する方法

    オブジェクトクラスを作成し、生成する方法: - オブジェクトクラスの要約を通じて現実の世界で始めます。 -

    その後、クラスを定義し、クラスは、オブジェクトの呼び出しを生成します。

    类的定义:class  Person:  #class  类名:注意类名后面不要括号 
    
            类体
  • オブジェクトの生成:

    クラス生成されたオブジェクトを呼び出します

    オブジェクトは、特定の中のもののこのタイプです

    クラス名+は、()の呼び出しは、オブジェクトクラス生成クラスを呼び出すときにクラスを定義するときに生成された名前空間を、オブジェクト空間の名前が生成されます。

    プロシージャ・コール生成されたクラスのオブジェクトインスタンス化されたクラスは、呼び出されたオブジェクト・クラスのインスタンスと呼ばれます。

オブジェクト・クラスの内部から関数を呼び出すために、方法をバインディングオブジェクトと呼ばれます。

データ属性クラス(クラス変数):オブジェクト・クラス属性には使用され、クラスのオブジェクト参照のプロパティは、同じメモリ・アドレス・クラスに向けられています。

メソッドのクラス(機能クラス):メソッドオブジェクト・クラスのために使用され、

メソッドを呼び出すために、異なる目的によって異なるオブジェクトにバインドし、オブジェクトが最初の引数として使用されるであろう__init__

クラスの二つの効果:属性参照とインスタンス化

#属性引用
class Person:
    role = '中国人'  #类属性----静态属性
    def walk(self):  #这里的函数叫做方法-----动态属性
        #注意:self必须写
        print('person is walking ...')
print(Person.role) #查看类属性
print(Person.walk) #查看类方法 , 用类名去调用方法名,打印出来的是内存地址
#中国人
#<function Person.walk at 0x000001D109431378>
#实例化
class Person:
    role = '中国人'
    def __init__(self,name,sex):
        self.name=name
        self.sex=sex
    def walk(self):
        print('person is walking')

lt = Person('leiting',21) #实例化:类名(参数1,参数2)  类名()就等于在执行Person.__init__()
print(lt.name)  #直接查看属性   对象名.属性名
print(lt) #返回的是一个对象
lt.walk()  #调用方法  ,对象名.方法()
#leiting
#<__main__.Person object at 0x000002C679CA84E0>
#person is walking

二つの効果の対象には:プロパティとメソッドのコールを表示します

  • オブジェクト名の検索順序

1.オブジェクトのプロパティは、自分自身のオブジェクトを見つけようとします。

オブジェクトがない場合2.、それはクラスに行きます。

3.クラスがない場合は、エラーになります。

ビューの名前空間のクラスのクラスとオブジェクト.__dict__オブジェクト.__dict__

print(People.__dict__)

print(p_obj.__dict__)

3、自己

オブジェクトクラス自体のインスタンス化

自己:オブジェクトのインスタンス自体をインスタンス化するときに自動的に渡される__init__最初のパラメータ

また、それに個人の名前を付けることができますが、普通の人は、あなたが変化するため他の人が知らないことを行うことはありません。

注意:def  __init__(self):   这句话可以写也可以不写,只要有参数参进来的时候就必须得写
   def  方法名(self):这里的self必须得写

おすすめ

転載: www.cnblogs.com/leiting7/p/11928393.html