Por ejemplo, el System.IO.Path.Combinemétodo en .NET tiene las siguientes sobrecargas:
Combine(params String[])
Combine(String, String)
Combine(String, String, String)
Combine(String, String, String, String)
¿Cuál es el punto de los últimos tres?
El primero los cubriría a todos, como si miraras de cerca, usa la paramspalabra clave. El argumento de la compatibilidad con versiones anteriores solo cubriría la Combine(String, String)variante, ya que era la única versión hasta .NET 4.
Combinecon cero o un segmento de ruta ni siquiera tiene sentido, sin embargo, laparamsversión le permite hacer esto.