什么使 C# non-inheritable 或 non-Instantiable 中的 SqlDataReader class
What makes SqlDataReader class in C# non-inheritable or non-Instantiable
需要了解 C# 如何使 SqlDataReader class 不可继承和不可实例化。
命名空间:System.Data.SqlClient
SqlDataReader class header :
public class SqlDataReader : System.Data.Common.DbDataReader, IDisposable, System.Data.Common.IDbColumnSchemaGenerator{
}
问题 1:
看到的class是public.
既然class是public::那为什么不能继承呢
问题二:
Constructor is not Private : Infact on seeing the definition of SqlDataReader : no constructor was seen :: 所以我想 C# 将标记为默认的默认构造函数是 Public 当没有找到构造函数时发生的一个 ::
因此,尽管据说有一个 Public 构造函数,但为什么不能实例化。
此外,我找不到这个问题 link 中回答和接受的“内部”构造函数:
why cant SqlDataReader class be inherited?
如能指出上述思路中的错误之处,将不胜感激
我不确定您正在查看哪个源代码(可能是基本的反汇编)。
看看 github SqlDataReader Source
它只有内部构造函数,因此无法实例化。
需要了解 C# 如何使 SqlDataReader class 不可继承和不可实例化。
命名空间:System.Data.SqlClient
SqlDataReader class header :
public class SqlDataReader : System.Data.Common.DbDataReader, IDisposable, System.Data.Common.IDbColumnSchemaGenerator{
}
问题 1: 看到的class是public.
既然class是public::那为什么不能继承呢
问题二: Constructor is not Private : Infact on seeing the definition of SqlDataReader : no constructor was seen :: 所以我想 C# 将标记为默认的默认构造函数是 Public 当没有找到构造函数时发生的一个 :: 因此,尽管据说有一个 Public 构造函数,但为什么不能实例化。
此外,我找不到这个问题 link 中回答和接受的“内部”构造函数: why cant SqlDataReader class be inherited?
如能指出上述思路中的错误之处,将不胜感激
我不确定您正在查看哪个源代码(可能是基本的反汇编)。 看看 github SqlDataReader Source
它只有内部构造函数,因此无法实例化。