Bin*_*ier 10 .net c# reflection
可能重复:
确定类型是否为静态
重复 确定类型是否为静态
是否有一个属性/属性我可以检查是否System.Type是一个静态类?
我可以间接地做到这一点,通过测试的Type有静态方法,并没有实例方法超越那些来自继承System.Object,但它不觉得干净(我暗自怀疑我失去了一些东西,这是不够严谨的定义static class).
是否有什么我失踪的类型,将断然告诉我,这是一个静态类?
或者是static classc#语法糖,没有办法在IL中表达它?
谢谢
BW
在IL级别,任何静态类都是抽象和密封的.所以你可以这样做:
Type myType = typeof(Form1);
if (myType.GetConstructor(Type.EmptyTypes) == null && myType.IsAbstract && myType.IsSealed)
{
// class is static
}
Run Code Online (Sandbox Code Playgroud)