Jaki jest cel sprawdzania siebie .__ klasa__? - python

Jaki jest cel sprawdzaniaself.__class__ ? Znalazłem kod, który tworzy abstrakcyjną klasę interfejsu, a następnie sprawdza, czy jestself.__class__ jest sam, np.

class abstract1 (object):
  def __init__(self):
    if self.__class__ == abstract1: 
      raise NotImplementedError("Interfaces can't be instantiated")

Jaki jest tego cel? Czy jest to sprawdzenie, czy klasa jest rodzajem samego siebie?

Kod pochodzi z NLTKhttp://nltk.googlecode.com/svn/trunk/doc/api/nltk.probability-pysrc.html#ProbDistI

questionAnswers(5)

yourAnswerToTheQuestion