Вопрос о дженериках в C # по сравнению с Java

В Java я могу указать универсальный шаблон с помощью подстановочного знака «?». Можно создать такую ​​карту:

Map .

Я работаю с C #, и мне нужен Dictionary > (где? Может быть int, double, любым типом). Возможно ли это в C #?

EDIT:

Пример:

interface ISomeInterface<out T>{
 T Method();
 void methodII();
}

class ObjectI : ISomeInterface<int>{
    ...
}
class ObjectII : ISomeInterface<double>{
    ...
}
class ObjectIII : ISomeInterface<string>{
    ....
}

Я пытался отобразить эти объекты в Dictionary, например:

Dictionary<String, ISomeInterface<?>> _objs = new Dictionary<String, ISomeInterface<?>();

_objs.Add("Object1", new ObjectI());
_objs.Add("Object2", new ObjectII());
_objs.Add("Object3", new ObjectII());

foreach(var keyVal in _objs){
   Console.WriteLine(keyVal.Method());
}

Объекты, реализующие ISomeInterface, загружаются во время выполнения с помощью Assembly и Activator.createInstance. В момент создания я не делаю этого, если объекты реализуют ISomeInterface или ISomeInterface .

Любая помощь приветствуется.

10
задан SLaks 12 May 2011 в 16:10
поделиться