vb.net的默认表单实例与c#的显式实例
> vb.net提供了可直接通过其名称空间访问的默认表单实例,从而简化了使用表单的名称访问。 但是,此功能模糊了类定义和对象实例之间的界限,可能会阻碍对对象的编程原理的彻底掌握。
理解Form1
的双重性
Form1
具有双重目的:这既是视觉工作室设计师生成的类,又是该类的预先创建的实例。 这个固有的实例(也命名为Form1
)位于命名空间内,增加了潜在的混乱。
Show()
方法的原点
> Show()
>检查中间语言(IL)代码揭示了不同的方法。 vb.net的
呼叫解析为呼叫命名空间的共享方法,而c#'s Form1.Show()
直接调用明确实例化的Show()
object的方法frm.Show()
>
Show()
frm
c#的设计选择:显式对象创建
c#的遗漏默认实例反映了其对清晰类型对象分离的重视。 C#使用授权创建明确的对象,从而加强对对象实例化和类型层次结构的精确理解。 这种方法在需要更多代码的同时,促进了更好的面向对象的编程实践。
以上是为什么VB.NET具有默认表单实例,而C#则没有?的详细内容。更多信息请关注PHP中文网其他相关文章!