zoukankan      html  css  js  c++  java
  • 一道面试题目引发的思考

    深入理解对象模型对我们理解面向对象的继承多态会大有裨益。
    一直没找到C#这方面的知识,粗浅的看过一点侯捷C++对象模型,实际分析问题的时候发现还是没有深入理解。
    无奈到园子里来请教大家。也希望高手前辈能够不吝赐教。如果有意写一些C#对象模型相关的文章我想对于新人来说可谓是莫大的帮助。期待,提前感谢。

    你知道下面的代码会输出什么么。
    A内部的嵌套类B继承自A

    using System;

    public class A
    {

        
    void printA()
        
    {
            Console.WriteLine(
    "printA");
        }
     
     
    public class B : A
        
    {
            
    new   void printA() // 1
            
    {
                Console.WriteLine(
    "printB");
            }

        }

        
    public static void Main(String[] args)
        
    {
            B BTemp 
    = new B();
            A ATemp 
    = BTemp;

            BTemp.printA();
            ATemp.printA();
            Console.ReadLine();
        }

    }

     
    上面的代码讲输出
    printA
    printA
    但是在注释1的地方加上public修饰符结果将变成
    printB
    printA
    上网搜了很久参考了下面这篇文章终久还是难解其中之密
    http://www.cnblogs.com/caomao/archive/2005/08/16/175459.html  再此感谢Zendy,我很喜欢这篇文章的风格

    因为才疏学浅,如果是我少见多怪了。
    希望兄弟们善意的提个醒。我好马上从这里撤离,省却在这里丢人现眼。哈哈。

  • 相关阅读:
    你真的会写二分查找吗
    深入理解C++对象模型
    python监控ip攻击,服务器防火墙
    python操作redis
    python操作mysql
    jmeter_linux下运行
    chales抓包,模拟异常情况
    python正则表达式
    python-笔记(六)模块操作以及常用模块简介
    fpython-笔记(五)装饰器、匿名函数
  • 原文地址:https://www.cnblogs.com/sky266/p/946035.html
Copyright © 2011-2022 走看看