命名空间的名称是否也定义了类中的作用域?
例如,我有一个默认命名为“solution”的命名空间。假设在Program.cs文件中,命名空间的名称是"MySolution";在我创建的下一个文件接口中,命名空间的名称是"Interfaces"。
当我返回到类中以实现此接口时,它不在作用域内(我无法在智能感知中找到它)。因此,如果类有一个命名空间,而接口有第二个命名空间,则无法在我的类���使用它。 我原本认为命名空间仅用于组织类(就像姓氏),但我想它还定义了作用域。
例如,我有一个默认命名为“solution”的命名空间。假设在Program.cs文件中,命名空间的名称是"MySolution";在我创建的下一个文件接口中,命名空间的名称是"Interfaces"。
当我返回到类中以实现此接口时,它不在作用域内(我无法在智能感知中找到它)。因此,如果类有一个命名空间,而接口有第二个命名空间,则无法在我的类���使用它。 我原本认为命名空间仅用于组织类(就像姓氏),但我想它还定义了作用域。
C#
中,它确实定义了一个逻辑范围,但在Java
中则同时定义了逻辑和物理范围(即包)。如果您想要在另一个命名空间中的另一个类中使用另一个命名空间中定义的接口,则必须在Program.cs
类顶部使用using Interfaces
。 - nIcE cOw