创建C#子类 我们可以增加一个新类库工程,具体做法是使用菜单File(文件)->Add Project(增加工程)并将它命名为cslib。接着通过选择菜单Project(工程)->Add Reference(增加引用)来增加一个引用到vblib工程。 当我们在IDE中直接引用这个工程的时候,我们不需要VB.NET的源代码。相反地,我们可以先创建vblib工程,再创建一个组件,接着从C#工程中引用这个组件来得到访问基类的目的,代码如下: namespace cslib { using System.WinForms; using vblib; public class csclass : Parent { public csclass() { Messagebox.Show(csclass constructor); } } } 以上这个C#代码共享了VB.NET中的代码。但是,C#的语法很大程度上来自C和C++语言,所以编程会变得复杂一点。所有的代码语句的最后要以分号(;)结束,并且利用左右括号({和})来定义一个块结构。而在VB.NET中定义一个块结构是利用Sub...End Sub语句,这正是VB.NET和C#语法上的一个差别,所以在利用VB.NET和C#混合编程的时候一定要注意到语法的差别。 我们还是仔细体会体会上面的代码吧。代码的第一行是为文件定义了名空间(namespace)。在C#中所有的名空间是显式定义在每一个代码模块中的: namespace cslib 在C#中的using关键字等价于在VB.NET中的Imports关键字。因为我们要使用System.WinForms和来自vblib的名空间,所以我们使用以下的语句来引入这些名空间: using System.WinForms; using vblib; 代码接下去的一行是声明我们要创建的类以及表明这个类是Parent的一个子类: public class csclass : Parent 在C#中一个子类是通过定义一个类来定义的,具体语法是类名之后加冒号(:),然后再加基类。这条语句等价于如下VB.NET的代码: Public Class csclass Inherits Parent 在VB.NET中构造函数是通过使用保留的方法New来创建的。而在C#中构造函数是使用类名作为方法的名字来创建的,例如: public csclass() { Messagebox.Show(csclass constructor); } 在C#中,大括号({和})定义一个块结构,而在这个块结构中我们可以放置方法的代码。在这个例子中的方法很简单,只是显示一个对话框来指示构造函数被调用了而已。 至此我们就可以为新工程创建客户代码了。 |
正在阅读:VB.NET面向对象的实现(8)交叉语言的继承VB.NET面向对象的实现(8)交叉语言的继承
2004-02-14 09:34
出处:
责任编辑:pjl
键盘也能翻页,试试“← →”键