Pythonの親クラスのプライベート属性とプライベートメソッド

875 ワード

親のプライベート属性とプライベートメソッド
1.サブクラスオブジェクトは、独自のメソッド内で親のプライベート属性またはプライベートメソッドに直接アクセスできません.
2.子オブジェクトは、親の共有メソッドを使用してプライベート属性またはプライベートメソッドに間接的にアクセスできます.
  • 私有属性、方法は対象のプライバシーであり、公開されず、外部およびサブクラスは直接fangwen
  • できない.
  • プライベート属性、方法は通常、いくつかの内部的なことをするために使用される
  • class A:
        def __init__(self):
            self.num1 = 100
            self.__num2 = 200
    
        def __test(self):
            print("     %d %d " % (self.num1,self.__num2))
    
        def test(self):
            print("      %d" % self.__num2)
    
            self.__test()
    class B(A):
    
        def demo(self):
            print("          %d " % self.num1 )
    
    b = B()
    print(b.num1)
    
    b.demo()
    b.test()
    

    解読:
  • Bのオブジェクトは直接アクセスできません.num 2プロパティ
  • Bのオブジェクトはdemoメソッド内にアクセスできません.num 2プロパティ
  • Bのオブジェクトはdemoメソッド内で親のtestメソッド
  • を呼び出すことができる.
  • 親クラスのtestメソッド内部にアクセスできます_num 2プロパティと_testメソッド