1 回答

TA貢獻1806條經驗 獲得超5個贊
我看不出這里有很大的不同。在 JAVA 中,您必須提供接口的名稱來限定類,而在 C# 中,您將使用命名空間。事實上,JAVA 語法因此充當某種命名空間。因此,您真正節省的唯一事情是一些打字負擔得起的類型namespace MyNamespace。
話雖如此,你可以在 JAVA 中做到這一點:
interface MyInterface
{
MyClass DoSomething();
class MyClass { }
}
interface AnotherInterface
{
MyClass DoSomething();
class MyClass { }
}
在 C# 中,類似的方法是這樣的 - 正如您已經提到的:
namespace MyNamespace
{
interface MyInterface { MyClass DoSomething(); };
class MyClass { }
}
namespace AnotherNamespace
{
interface AnotherInterface { MyClass DoSomething(); };
class MyClass { }
}
在 JAVA 中使用類型如下:
MyInterface.MyClass m = interfaceInstance.DoSomething();
在 C# 中,以下內容是有效的:
MyNamespace.MyClass m = interfaceInstance.DoSomething();
在兩種語言中,您都必須限定類的完整名稱。在 C# 中,您是通過其命名空間執行此操作,而在 JAVA 中則是通過其接口(但它充當命名空間)來執行此操作。
所以實際上并沒有太大的區別,無論如何你必須提供命名空間/接口。我能看到的唯一區別是您需要輸入namespaceC# 和一些大括號。
- 1 回答
- 0 關注
- 193 瀏覽
添加回答
舉報