.NET 中的类型反射、后期绑定与基于属性的编程
后期绑定方法调用
在 .NET 编程中,后期绑定允许在运行时动态调用方法。以下是一个简单的示例,展示如何调用无参数的方法:
// Get info for TurboBoost.
MethodInfo mi = miniVan.GetMethod("TurboBoost");
// Invoke method ('null' for no parameters).
mi.Invoke(obj, null);
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
当 TurboBoost() 方法被调用时,会出现相应的消息框。
带参数的方法调用
若要使用后期绑定调用需要参数的方法,需将参数打包成一个松散类型的对象数组。例如, CarLibrary.dll 版本 2.0.0.0 中的 Car 类定义了如下方法:
public void TurnOnRadio(bool musicOn, MusicMedia mm)
{
if (musicOn)
MessageBox.Show(string.Format("Jamming {0}", mm));
else
MessageBox.Show("Quiet time...");
}
超级会员免费看
订阅专栏 解锁全文
27

被折叠的 条评论
为什么被折叠?



