Es gibt keinen signifikanten Unterschied. Die zweite Methode, die Dinge in einem Objekt hat, wird Kapselung genannt. Das Einkapseln ist normalerweise besser, wenn Sie viele Parameter oder einen allgemeinen Satz von Parametern haben, die an andere Methoden weitergegeben werden. Es gibt einen sehr geringen Verarbeitungseinfluss auf die Verkapselung, aber es sollte Sie in keiner wahrnehmbaren Weise beeinträchtigen.
Wenn jede Variable separat ist, ist dies eher sinnvoll für kleinere Parameter und für Methoden, die diese Parameter nicht an andere Methoden weitergeben.
Am Ende, aber es liegt an Ihnen, was Sie verwenden. Wie ich bereits sagte, die Auswirkungen der Kapselung sind vernachlässigbar, aber es kann ein Problem sein, Klassen und Strukturen für alles zu definieren. Ich verwende im Allgemeinen Kapselung, wenn es eine Sammlung von Variablen gibt, die oft zusammen gefunden werden, die mehrere Methoden verwenden. Dann können bestimmte Methoden einfach Variablen ignorieren, die sie nicht benötigen.
Bonus Fact
Es gibt auch eine dritte Möglichkeit, Parameter vorbei, wenn Sie eine beliebige Anzahl von Dingen, eine Methode, um in der Lage akzeptieren wollen. Dies geschieht über das Schlüsselwort params
für einen Parameter, der alle mitgelieferten Parameter übernimmt und in einem Array speichert. In Ihrem Summe Fall funktionieren würde, wie folgt:
public int Sum(params int[] args) //Accepts any number of int parameters
{
int result = 0;
for(int i = 0; i < args.Length; ++i)
{
result += args[i];
}
return result;
}
die dann wie genannt werden:
Sum(1, 2);
Sum(1, 2, 3, 4, 5, 6, 7, 8);
or even
Sum(1);
params
obwohl weniger Anwendungen haben dazu tendiert, und ich bin nicht sicher, der Verarbeitung Auswirkungen davon, aber es ist da, wenn du es brauchst.
Es macht überhaupt keinen Unterschied. Die zweite Option, die Sie anzeigen, heißt Kapselung und wird zum Bündeln von Daten in ein einzelnes Objekt verwendet. Verschiedene Anwendungsfälle für beide. – nbokmans