Die Java documentation besagt, dass, wenn es mehrere generische Parameter gibt, die Konvention, S, U, V usw. für die 2., 3., 4. Typen zu verwenden. Gilt diese Konvention für den gesamten Bereich einer einschließenden Gruppe <>
oder für eine Klasse?Java generischer Typ Parameter Namenskonvention Geltungsbereich
Zum Beispiel, wenn ich eine Klasse mit zwei separaten Methoden, die verschiedene generische Parameter verwenden, funktioniert die obige Konvention meine ich sollte den Code wie folgt schreiben:
public abstract class MyClass
{
public abstract <T extends Class1> T method1();
public abstract <S extends Class2> S method2();
}
Oder wie folgt aus:
public abstract class MyClass
{
public abstract <T extends Class1> T method1();
public abstract <T extends Class2> T method2();
}
Definitiv die zweite Möglichkeit. Die Konvention besteht darin, Typen im selben Umfang zu unterscheiden, ähnlich der Konvention von "i" und "j" für Indexvariablen. – shmosel
Nicht sicher, dass es eine Konvention dafür gibt, aber ich persönlich würde die erste bevorzugen. Viel weniger Chance, dass jemand den Code nach dir liest und verwirrt ist. – markspace
so Meinung basiert? –