Если у вас есть собственный класс сбора, в котором веса одного класса фруктов хранятся индивидуально в поплавках / двойных, например:
1.1, 3.3, 6.6, 4.4, ...
и вам нужно будет указать, является ли он поплавком или двойным, и чтобы дифференцировать тип плода, лучше сделать это так:
Использование перечисления:
FruitList<float, FruitType.Orange>
или
Использование перечисления в конструкторе:
FruitList<float> (FruitType.Orange)
или
Использование класса:
FruitList<float, Orange>
или
Использование класса в конструкторе:
FruitList<float> (Orange)
Меня смущает то, имеет ли смысл указывать подобные вещи в области <> (не знаю, как называется эта область)?
Какая практика лучше, быстрее и эффективнее?
Кстати, класс Orange никогда нигде не используется, просто написал его, если есть смысл указать такой тип?
РЕДАКТИРОВАТЬ: Кстати, это только пример, а не фактический случай, но это ясно отражает. Как будто все это плавает / удваивается и передается другим методам. Но методы должны знать, какой тип фруктов правильно выполнять. Сами фрукты ничего не значат.