• 多态, SOS调试, 方法槽表


    SOS调试
    C:\Windows\Microsoft.NET\Framework\v4.0.30319\SOS.dll
    http://www.rainsts.net/article.asp?id=598

    方法槽表

    方法槽表的结构: 最开始是方法槽数、任何类型的开始4个方法总是ToString, Equals, GetHashCode, and Finalize。这些是从System.Object继承的虚方法。然后后面是类型从基类继承的虚方法,接着是自己类型实现的方法,最后是构造方法。方法槽表的主要就够就是:虚方法--实例方法--构造方法,这样的排序。这里要特别主要的是,基类的实例方法和静态方法是不会继承到子类的方法槽表中的,这里和我们之前理解的,子类会继承父类所有的非构造方法是不同的。因为继承是逻辑上的,而这里是物理上的结构。也就是说,一个类型的方法表槽中,只有父类的虚方法和自己定义的方法(暂不管那4个方法和构造方法)。理解了方法槽表的结构,讲有助与理解继承和多态的本质。

    1.多态是面向对象编程中三大机制之一,其原理建立在"从父类继承而来的子类可以转换为其父类"这个规则之上,换句话说,能用父类的地方,就能用该类的子类.当从父类派生了很多子类时,由于每个子类都有其不同的代码实现,所以当用父类来引用这些子类时,同样的操作而可以表现出不同的操作结果,这就是所谓的多态.

    2.多态就是针对不同类别的对象,在使用相同的方法有不同的行为方式。

    3.public 和protected都可以被子类继承, private不能继承, 只能在本类定义的代码内使用.

    作者:BobLiu
    邮箱:lzd_ren@hotmail.com
    出处:http://www.cnblogs.com/liuzhendong
    本文版权归作者所有,欢迎转载,未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    在线免费学习全世界的课程
    【安卓】imageView.scaleType取centerCrop后,再用padding时显示异常?
    win8+VS2012搭建OpenGL超级宝典的环境
    leetcode第一刷_Plus One
    HASH JION AND NESTED JION
    Hive创建外部表以及分区
    Android数字签名解析(一)
    Alex 的 Hadoop 菜鸟教程: 第3课 Hadoop 安装教程
    用C#生成不反复的随机数
    Swift数据类型及数据类型转换
  • 原文地址:https://www.cnblogs.com/liuzhendong/p/2153611.html
Copyright © 2020-2023  润新知