• vb.net 实现多态


    1. 新建一个module,设置public 其他类才可以调用

    Public Module Module2
        Public Interface MyInterface
            Property stuName As String
            Function GetScore(ByVal x As Single) As Single
        End Interface
    
        Public Class StuInfo
            Implements MyInterface
            Private studentScore As Single
            Private studentName As String
            Public Property Score() As Single
                Get
                    Return studentScore
                End Get
                Set(ByVal value As Single)
                    studentScore = value
                End Set
            End Property
            Public Function GetScore(ByVal x As Single) As Single Implements MyInterface.GetScore
                Return x * 0.8
            End Function
    
            Public Property StuName() As String Implements MyInterface.stuName
                Get
                    Return studentName
                End Get
                Set(ByVal value As String)
                    studentName = value
                End Set
            End Property
        End Class
    
    
        Public Class StuMessage
            Implements MyInterface
            Private studentName As String
            Private stuScore As Single
            Public Property Score() As Single
                Get
                    Return stuScore
                End Get
                Set(ByVal value As Single)
                    stuScore = value
                End Set
            End Property
            Public Function GetScore(ByVal x As Single) As Single Implements MyInterface.GetScore
                Return x * 0.8
            End Function
    
            Public Property StuName() As String Implements MyInterface.stuName
                Get
                    Return studentName
                End Get
                Set(ByVal value As String)
                    studentName = value
                End Set
            End Property
    
        End Class
    
    End Module

    2. 测试页面:

    Public Class TestClassForm
        Public Sub ShowScore(ByVal obj As MyInterface, ByVal s As String, ByVal score As Single)
            MsgBox(s & "成绩为:" & obj.GetScore(score) & "")
        End Sub
        Private Sub TestClassForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    
        End Sub
    
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            Dim obj1 As New StuInfo()
            Dim obj2 As New StuMessage()
            ShowScore(obj1, "期中", 100)
            ShowScore(obj2, "期末", 100)
        End Sub
    End Class
  • 相关阅读:
    android driver开发常见的英文缩写
    简析quakeIII中利用链表实现的内存管理(1)
    链表的建立
    boson netsim5.31平台上组建交换式网络
    第六周周记
    价值观作业
    C语言的知识与能力的自评
    学习进度表
    Web表格部分内容
    线性表部分知识
  • 原文地址:https://www.cnblogs.com/sxjljj/p/11442041.html
Copyright © 2020-2023  润新知