¿Cómo detectar la sobrecarga de métodos en subclases en python?

Tengo una clase que es una superclase para muchas otras clases. Me gustaría saber (en elen es () de mi superclase si la subclase ha anulado un método específico.

Intenté lograr esto con un método de clase, pero los resultados fueron incorrectos:

class Super:
   def __init__(self):
      if self.method == Super.method:
         print 'same'
      else:
         print 'different'

   @classmethod
   def method(cls):
      pass

class Sub1(Super):
   def method(self):
      print 'hi'

class Sub2(Super):
   pass

Super() # should be same
Sub1() # should be different
Sub2() # should be same

>>> same
>>> different
>>> different

Existe alguna forma de que una superclase sepa si una subclase ha anulado un método?

Respuestas a la pregunta(10)

Su respuesta a la pregunta