您的位置:首页 > 编程语言 > VB

回顾vb(多态)

2014-09-12 12:42 239 查看
             由于vb是基于对象没有完全面向对象所以vb也就没有继承。但是vb可以实现向C++和Java一样的继承的功能(个人理解),所以vb也算是有继承了。面向对象的编程理念是抽象——封装——继承——多态。我的理解是vb的的抽象——类;封装——在类中写过程;继承——复制过程的代码;多态——不同的结果。
           下面介绍下vb中多态实现的具体步骤:
            1、定义接口类 。
                    接口类中只是写事物的功能,具体实现类的代码不写。
                    例如:我们定义一个接口类Fruit类,它的功能是保鲜。
                               public sub save() 
                           
                                end   sub 

            2、定义实现类
                     实现类就是使用接口类实现某些功能
                     例如:我们定义两个实现类,Apple类和Grape类。
                               Grape类代码:
                                        Implements Fruit  '声明要是使用Fruit这个接口
                                          public sub Fruit_save()
                                                msgbox "apple save"
                                          end  if 
                                Apple 类代码:
                                          Implements Fruit  '声明要是使用Fruit这个接口
                                             public sub Fruit_save()
                                                 msgbox "grape  save"
                                             end  if 
               
             接下来就是在窗体中写代码了
                     private   sub mysub(afruit as Fruit)  '定义过程
                                 afruit.save
                      end sub
                 
                      private sub command1_clike()
                               dim  aApple as Apple
                                set aApple = new  Apple 
                                
                                call  mysub(aApple)
                                set aApple as nothing
                              
                                dim  agrape  as Grage
                                 set agrape = new  Grage
                                 
                                call  mysub(agrape)
                                set agrape as nothing 
                     end sub

              然后运行就可以看到msgbox 分别弹出 apple save  和 apple  save。
              运用相同的变量afruit  传入不同的参数实现不同的结果,这便实现了多态的功能。

            总结:这和我们在模块中写一个function过程有点像,都是传入参数返回结果。但多态可定由他独特的好处,                          具体好处我也不知道。说实话感觉到这里对面向对象 的理念理解的还不是太清,不过没关系因为我们
                        还会有第二遍第三遍的学习。  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: