早期绑定
该名称本身描述了编译器知道它是哪种对象,它包含的所有方法和属性。声明对象后,.NET Intellisense将在单击点按钮时填充其方法和属性。
常见示例:
ComboBox cboItems;
ListBox lstItems; 在上面的示例中,如果我们键入cboItem并在其后放置一个点,它将自动填充组合框的所有方法,事件和属性,因为编译器已经知道它是组合框。
后期绑定
该名称本身描述了编译器不知道它是什么样的对象,它包含的所有方法和属性是什么。您必须将其声明为对象,稍后需要获取对象的类型以及存储在其中的方法。一切都会在运行时知道。
常见示例:
对象objItems;
objItems = CreateObject(“ DLL或程序集名称”); 此处,在编译期间,不确定objItems的类型。我们正在创建dll的对象并将其分配给objItems,因此一切都在运行时确定。
早期绑定与后期绑定
现在进入图片……
由于此处没有装箱或拆箱,因此应用程序在早期绑定中的运行速度会更快。
由于智能感知将自动填充,因此更容易在早期绑定中编写代码
早期绑定中的最小错误,因为语法是在编译时本身检查的。
后期绑定将支持所有类型的版本,因为一切都在运行时确定。
如果使用了后期绑定,则代码对将来的增强的影响最小。
性能将是早期绑定中的代码。两者都有优点和缺点,这是开发人员决定根据情况选择合适的绑定的决定。