这可能是一个愚蠢的问题吗?当然,但我或多或少只是好奇地听到别人的意见。那么对象声明使用完整的引用路径是否有好处? MSDN似乎只提到它可能有助于重载控件或声明已经包含在Visual Basic语言中的类。
我指的是这样的声明
Dim MyFile As New System.IO.File
如果您Import System.IO
在Visual Studio中,它会告诉您该名称可以简化为
Dim MyFile As New File
但是,除了File
还是System.IO.File
的完整引用之外,还有其他任何好处或真正重要吗?如果您不想Import System.IO
,您仍然可以使用File
类吗?我确信这是两者中的后者,只是如果你不想导入它,但更好的做法是使用System.IO.File
而不仅仅是File
?老实说,我或多或少只是好奇,因为我知道它会编译和运行。
答案 0 :(得分:0)
存在的一个原因是解决名称冲突。
例如: 假设你有一个班级:
CompanyOne.ProductX.Customer
和另一个班级:
CompanyTwo.ProductY.Customer
如果导入两个名称空间(CompanyOne.ProductX
和CompanyTwo.ProductY
),然后声明Customer
对象,则会出现编译时错误。它不知道你试图实例化哪个Customer
对象。
因此,要解决此问题,您将使用类的完全限定名称来声明您的变量。