Por exemplo, o System.IO.Path.Combine
método no .NET possui as seguintes sobrecargas:
Combine(params String[])
Combine(String, String)
Combine(String, String, String)
Combine(String, String, String, String)
Qual é o sentido dos três últimos?
O primeiro abordaria todos, como se você observasse atentamente, ele usa a params
palavra - chave. O argumento de compatibilidade com versões anteriores cobriria apenas a Combine(String, String)
variante, pois era a única versão até o .NET 4.
Combine
com zero ou um segmento de caminho nem faz sentido, mas aparams
versão permite que você faça isso.