首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

问个关于继承的有关问题(VB2005)

2012-01-29 
问个关于继承的问题(VB2005)PublicClassaPublicOverridableFunctionGetMyName()AsStringReturn基类 EndF

问个关于继承的问题(VB2005)
Public     Class     a  
 
              Public     Overridable     Function     GetMyName()     As     String    
                              Return         "基类 "    
              End     Function    
 
 
End     Class    
 
Public     Class     b  
              Inherits     a    
 
              Public     Overrides     Function     GetMyName()     As     String    
                              Return         "子类 "    
              End     Function    
 
              Public     Overridable     Function     GetMyBassName()     As     String    
                              Return     MyBase.GetMyName    
              End     Function    
 
              Public     Overridable     Function     GetMyClassName()     As     String    
                              Return     MyClass.GetMyName    
              End     Function    
 
End     Class    
 
 
Public     Class     c    
              Inherits     b    
 
              Public     Overrides     Function     GetMyName()     As     String    
                              Return         "b的子类 "    
              End     Function    
End     Class    

Public   Class   Form1

        Private   Sub   Form1_Load(ByVal   sender   As   System.Object,   ByVal   e   As   System.EventArgs)   Handles   MyBase.Load
                Dim   qq   As   New   c
             
        End   Sub
End   Class


对于以上代码,我有以下疑问:
1:class   c继承class   b,当我在form1中实力化一个c类,并切调用GetMyBassName()和GetMyClassName()的时候,这两个方法是在   Class     c   中执行的,还是在   Class     b中执行的?

其实关键就在于“调用”这两个字的含义,调用说的是:
引用父类中的方法,但是   方法   放在父类中执行,
还是:


引用父类中的方法,但是此方法是放在本类(也就是引用这个方法的那个类)中执行的?

这个问题对我很重要!
希望高人能给我一个明确的答复,我在VB2005中实验里多次,但是几乎没什么答案!

在此先谢谢各位热心人!

[解决办法]
其实多态也很简单,按我的经验,解答你的问题:
1。如果不是虚函数,转成什么类型,就调用哪个类型的成员函数
2。如果是虚函数,不管转成什么类型,调用new的时候,new出什么类型,就永远调用那个类型的成员函数。

还要知道原因,那就要了解一下虚函数指针的概念了。没时间写了。有需要再回答。

热点排行