2014-12-02 4 views
0

Я хочу, чтобы преобразовать эти элементы интерфейса на C#Общий интерфейс в C# мигрировали из JAVA

<T> T GetValue(string areaKey, string key, Class<T> clazz); 

<T> T GetValue(string areaKey, string key, T defaultValue, Class<T> clazz); 

, но я не так хорошо с C#, как и JAVA. Можно ли использовать его так же, как в JAVA?

+0

Является '' класса что-то особенное в Java? Я не знаю, что такое синтаксис Java? IN C#, который подразумевал бы, что у вас есть общий класс под названием «Класс» – Jamiec

ответ

1

Christos правильно, я бы просто добавить where T : class

public interface InterfaceName<T> where T : class 
{ 
    T GetValue(string areaKey, string key, T clazz); 
    T GetValue(string areaKey, string key, T defaultValue, T clazz); 
} 
1

Родовой типа просто указываются после имени методы в C#

T GetValue<T> (string areaKey, string key, Class<T> clazz); 

или, вы можете указать его в самом интерфейсе:

public interface IMyInterface<T> 
{ 
    T GetValue (string areaKey, string key, Class<T> clazz); 
} 
+0

Привет, следует ли использовать класс ? – Christos

+0

@Christos, если у вас есть класс под названием «Класс», который я считаю. Я бы назвал класс «Класс»? возможно нет! – Jamiec

+0

Я понял. Я немного смутился с «классом», и, поскольку я понятия не имею о JAVA, я не знал, нужно ли это. – Christos

1

Япа. Вы могли бы попробовать что-то, как показано ниже:

public interface InterfaceName<T> 
{ 
    T GetValue(string areaKey, string key, T clazz); 
    T GetValue(string areaKey, string key, T defaultValue, T clazz); 
} 
+0

спасибо за быстрый ответ – mbrc

+0

@mbrc вы приветствуете чувака. Я рад, что помог. – Christos

Смежные вопросы