簡體   English   中英

調用類的屬性會在Python中實例化該類的對象嗎?

[英]Does calling an attribute of a class instantiate an object of that class in Python?

如果我有Foo課...

class Foo(object): 

    bar = True        
  • 調用Foo.bar實例化一個Foo類型的對象,該對象會立即收集垃圾?

  • 我必須在Foo和bar之間包含()來創建該類型的實例嗎?

  • 如果我確實需要括號,它們會調用什么方法? __init__()嗎?

調用Foo.bar實例化一個Foo類型的對象,該對象會立即收集垃圾?

不。您在此處將Foo.bar定義為類屬性,而不是實例屬性。

我必須在Foo和bar之間包含()來創建該類型的實例嗎?

是的,調用Foo()是創建Foo對象的正確語法。

如果我確實需要括號,它們會調用什么方法? __init__()嗎?

首先將調用__new__ (也許是從超類object ),它實際上會創建新對象,然后將調用__init__來初始化已存在的對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM