科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件Microsoft .NET 中的基类继承

Microsoft .NET 中的基类继承

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文介绍了继承,说明了如何继承基类,并且介绍了 Microsoft .NET 中的实现继承和接口继承......

作者:Paul D. Sheriff 来源:化境编程界 2007年11月5日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
构建示例窗体

  要创建窗体,请单击 Project(项目),然后单击 Add Windows Form(添加 Windows 窗体)。

  将窗体命名为 frmLineTest.vb 并单击 OK(确定)。

  然后在该窗体上创建相应的控件并设置属性。

  构建 Line 类

  接下来将构建要继承的 Line 类。

  从菜单中单击 Project(项目),然后单击 Add Class(添加类)。

  键入如下所示的代码。

Public Class Line
Private mstrLine As String

Property Line() As String
Get
Return mstrLine
End Get
Set(ByVal Value As String)
mstrLine = Value
End Set
End Property

ReadOnly Property Length() As Integer
Get
Return mstrLine.Length
End Get
End Property

Public Function GetWord() As String
Dim astrWords() As String

astrWords = mstrLine.Split(" ".ToCharArray())

Return astrWords(0)
End Function
End Class

  创建子类

  既然窗体和基类都已经创建完毕,现在便可以开始执行继承了。

  单击 Project(项目),然后单击 Add Class(添加类)。将该类命名为 LineDelim.vb 并单击 OK(确定)。

  添加新类时,请修改 Visual Basic .NET 所创建的代码,使之与下面的示例代码相似。

Public Class LineDelim
Inherits Line

End Class

  因为添加了 Inherits Line 语句,所以您可以在这一新创建的类中使用 Line 类的所有属性和方法。

  试一试

  打开 frmLineTest.vb 窗体。

  双击 Get Word(取词)按钮。

  向此按钮的单击事件过程添加以下代码:

Protected Sub btnFirst_Click(ByVal sender As Object, _

ByVal e As System.EventArgs) Handles btnFirst.Click
Dim oLine As LineDelim = New LineDelim()

oLine.Line = txtLine.Text
txtFirstWord.Text = oLine.GetWord()
End Sub

  运行项目,并在窗体上单击 Get Word(取词)按钮。您将看到“The”一字出现在按钮旁边的只读文本框中。

  Inherits 语句的功能非常强大,只需要使用这一个语句,就可以在 LineDelim 类中使用 Line 类的所有属性和方法。尽管这个新类尚未执行任何新的操作,但它却表明从 Line 类中继承的所有代码都可以正常工作。

  添加其他功能

  现在,您可以使用其他属性和方法对 LineDelim 类进行扩展。要向 LineDelim 类添加两个新的属性,请执行以下步骤。

  在上一部分添加的 Inherits 语句后添加两个 Private 变量,如下所示。

Private mstrDelim As String = " "
Private mstrOriginal As String

  键入如下代码,为这两个 Private 变量添加适当的 Property 语句。您可以将以下代码放在上面输入的两行代码后面(紧挨这两行)。

Public Property Delimiter() As String
Get
Return mstrDelim
End Get
Set(ByVal Value As String)
mstrDelim = Value
End Set
End Property

Public ReadOnly Property OriginalLine() As String
Get
Return mstrOriginal
End Get
End Property

  现在您可以使用 Delimiter 属性设置并获取 Private 变量 mstrDelim 的值。

  如果不希望其他人更改这些属性,您可以将属性设为只读。要执行此操作,请不再使用 Set 语句,并在 Property 语句中添加 ReadOnly 属性。有关示例,请参见上面代码中显示的 OriginalLine 属性声明。

  接下来,需要创建一个称为 ReplaceAll 的方法,此方法可以将文本行中的所有空格替换为传递到 Delimiter 属性中的分隔符字符。

Public Function ReplaceAll() As String
mstrOriginal = MyBase.Line

Return MyBase.Line.Replace(" ", mstrDelim.ToChar())
End Function

  ReplaceAll 方法通过基类的 Line 方法检索原始文本行。而以前从基类中检索属性时使用的是 MyBase.Line 语法。ReplaceAll 函数将 MyBase.Line 属性的值放入您刚刚为该类创建的 Private 变量 mstrOriginal 中。String 数据类型的 Replace 方法将字符串字符的所有实例替换为在 Delimiter 属性中设置的新分隔符字符 mstrDelim。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章