zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    C 库函数 ------ qsort()
    递归之美
    C函数库 ------ ctype.h
    scanf 多行输入判断结束
    POSIX库、glibc库、pthreads库、libc库、newlib、uClibc
    Docker 私有仓库搭建
    在daemon.json中配置主机后无法启动docker
    MySQL配置HeartBeat实现心跳监控和浮动IP
    Heartbeat基础知识-运维小结
    (二) Docker中启动镜像
  • 原文地址:https://www.cnblogs.com/sxjljj/p/11442041.html
Copyright © 2011-2022 走看看