的。如果我有如下的類:2的方法,使用2個泛型類型相同
class MyClass<T,U>
{
public void DoSomething(T t)
{
}
public void DoSomething(U u)
{
}
}
但使用相同類型(new MyClass<int,int>()
) 編譯沒有建造它,但如果我嘗試調用DoSomething
它的錯誤因爲一個模糊的電話,這當然是正確的。但是如果該方法是通過反射或其他動態方式來調用的話。我想它會在運行時拋出異常。所以我的問題是爲什麼編譯器允許我使用相同的類型創建這個類,如果有異常等待發生?
感謝所有的答覆。你們中的一些人已經說過不同的方法,這顯然是最好的解決方案。順便說一句,我最初注意到這種情況不是用方法,而是用索引(this [T t]和this [U u]),所以不可能重命名這些方法。我現在已經改變了設計,所以原來的問題仍然無法解決,但問題可能仍然是人們感興趣的:) – RichK 2010-07-23 13:13:12