¿Por qué los métodos de extensión deben ser estáticos? [duplicar]

Aug 20 2020

No entiendo por qué tiene que ser estático. ¿Cuál es el problema de poder crear un objeto para un método de extensión?

Respuestas

1 RobertColumbia Aug 20 2020 at 05:07

Los métodos de extensión son un atajo para hacer que parezca que una clase tiene más métodos de los que realmente tiene al permitirle agregar una llamada al método de extensión a una referencia a una instancia de la clase extendida. Un método de extensión no estático también requeriría una referencia a una instancia de la clase de extensión (ya que un método no estático puede hacer referencia a un estado específico de la instancia), y eso no tendría sentido en la sintaxis.

Si desea poder realizar un método en instancias de dos clases, puede hacerlo, pero no de la manera que imagina.