Jos*_*cia 8 c# namespaces class
我正在考虑这两种情况:
class StructuralCase
{
class Structure
{
...
}
class Material
{
...
}
class Forces
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
和
namespace StructuralCase
{
class Structure
{
...
}
class Material
{
...
}
class Forces
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
问题是在"StructuralCase"中我不会声明任何实例变量,例如,它将作为其余类的"父".
这导致我考虑将StructuralClass转换为命名空间.你觉得怎么样?有什么硬规则吗?
小智 5
我只会使用命名空间,因为您不需要所有类的开销。
一个类有更多的结构、变量和方法,并提供了继承层,但如果你不需要它们,就不要使用 Class。
你有两件事.
第一种情况class example:
你有一个内部类,有3个嵌套的私有类
在您的第二个场景中namespace example:
您有3个内部独立类,没有嵌套.
如果类只应在StructuralCase第一个示例中使用,否则如果类是独立的并且没有关系,那么命名空间就是前进的方法.
通常,您想使用 a namespace,如果仅仅是因为它启用using语句 - 否则您必须通过所有嵌套类引用该类(当然,父类本身除外)。因此,在情况 1 中,外部参考必须说
StructuralCase.Structure s = ...
Run Code Online (Sandbox Code Playgroud)
代替
using StructuralCase;
// ...
Structure s = ...
Run Code Online (Sandbox Code Playgroud)
从功能上讲,创建嵌套类的唯一真正原因是
internalstruct用于特定查询结果的特定