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, "期中", )
ShowScore(obj2, "期末", )
End Sub
End Class

vb.net 实现多态的更多相关文章

  1. java面向对象(封装-继承-多态)

    框架图 理解面向对象 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程强调的是功能行为 面向对象将功能封装进对象,强调具备了功能的对象. 面向对象是基于面向过程的. 面向对象的特点 ...

  2. VB.NET入门基础

    众所周知,Visual Basic.NET是由Visual Basic发展而来,这两者之间的升级使得Visual Basic语言发生了革命性的变革,使得由基于对象编程的Visual Basic过渡到了 ...

  3. VB.NET Shared(共享)和 Static(静态)关键字的区别

    共享成员(Shared): VB.NET现在是支持真正的面向对象编程,可以继承.使用多态.共享成员 和静态成员. 共享成员就是在所有类和所定义派生类的实例之间共享的方法.属 性.字段和事件.所有使用类 ...

  4. VB.NET 机房收费系统项目总结

    VB.NET机房收费系统项目总结 从2013年5月3日——2013年8月20日历时三个多月的.NET机房收费系统终于完成了.项目做完了,真有一种如释重负的感觉. 下面我将从文档.UML图,代码这三个方 ...

  5. vb.net 总结

    vb.net 可以说是vb6.0的升级版,在语法结构上与vb很相似.那么,我们就来说一下它们之间有什么不同的地方吧. vb6.0          vb是我们入门的一个非常好的编程软件,它可以实现软件 ...

  6. Java中继承与多态

    Java类的继承继承的语法结构:    [修饰符列表] class 子类名 extends 父类名{        类体;    }子类就是当前这个类,父类就是我们要复用的那个类java中只支持单继承 ...

  7. Java类的继承与多态特性-入门笔记

    相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...

  8. 3、二、c# 面向对像编程。类,结构、C# 数据类型(引用类型、值 类型、指针类型)、ref参数与out参数、方法的重载、静态类型与静态成员、继承与多态、委托与事件

    一.类 定义类使用class关键字. <access specifier> class class_name { // member variables 成员变量 <access s ...

  9. C++ 什么是多态

    一.什么是多态(Polymorphism) 多态(Polymorphism)是面向对象(Object-Oriented,OO)思想"三大特征"之一,其余两个分别是封装(Encaps ...

随机推荐

  1. windows7安装 npm和cnpm

    1.node.js下载地址: https://nodejs.org/en/download/ 我选择的安装路径是D:\files\nodejs 2.查看安装是否成功 3.创建文件夹 在D:\files ...

  2. MySQL8.0服务启动(windows10)

    mysql下载地址:https://dev.mysql.com/downloads/mysql/ 根目录下配置文件:my.ini [mysqld]# 设置3306端口port=3306# 设置mysq ...

  3. python+selenium:浏览器webdriver操作(0)

    1.浏览器最大化 启动的浏览器不是全屏的,这样不会影响脚本的执行,但是有时候会影响我们“观看”脚本的执行. #coding=utf-8 from selenium import webdriver i ...

  4. MySQL性能优化---优化方案

    1.对查询进行优化,应尽量避免全表查询,首先考虑在where及order by涉及的列上建立索引: 2.应尽量避免where子句中对字段进行null值判断,否则将导致引擎放弃使用索引而进行全表扫描: ...

  5. Object的rest和spread方法

    //将多个对象合并到一个对象里 const input = { a: 1, b: 2 } const test = { d: 5 } const output = { ...input, ...tes ...

  6. jmeter的使用---录制脚本

    1.设置fidder 2.在fidder中导出请求,选择jmx格式

  7. svn还原与本地版本回退

    今天遇到了一个情况,由于没及时更新,对整个项目进行了Ctrl+shift+O,提交代码时冲突:然后就先还原项目,导致之前没有冲突的代码也回退了.然后就在eclipse中获取本地的版本记录,并回退 具体 ...

  8. C语言 time、rand、srand

    C语言 time.rand.srand #include <time.h> time_t time(time_t *t); 功能:获取当前系统时间 参数:常设置为NULL 返回值:当前系统 ...

  9. python之 '随机'

    Q:想生成随机数,用哪个库? import random Q:想生成一个随机整数,范围在[0, 100]之内,怎么弄? >>> random.randint(0, 100) 7 Q: ...

  10. python关于操作文件的相关模块(os,sys,shutil,subprocess,configparser)

    一:os模块 os模块提供了许多允许你程序与操作系统直接交互的功能 功能 说明 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirna ...