1.6 语言的互操作性
在1.5节中已经介绍了CLS的终极目标就是实现语言的互操作性,那么CLS在语言的互操作性上起的作用可见一斑。语言的互操作性,主要分下面两种情况。
❑不同的.NET语言间互相调用
我们先来看下图1-11,使用C#编写的对象B可以从Visual Basic.NET编写的对象A继承,还可以在对象B中对基类A中的方法执行重载、覆写等操作;另外,使用J#编写的对象C可以访问对象A,并调用A的方法。可见,语言的互操作性给我们的工作带来了非常大的灵活性。
图 1-11 语言的互操作性
❑通过P/Invoke服务调用非托管代码编写的组件或服务,例如COM组件,具体请参阅第28章。