zoukankan      html  css  js  c++  java
  • 笔试题.NET基础代码面试题

    题目如下,本随笔只是记录,都是一些自身面经的题目,您既然点开了的话,学习下无妨,说不定有帮助呢

    以下答案都经过博主一个个去运行过。

    题目1 (实例化后 x=?;y=? 输出什么):

    public class Class1
    {
        public Class1()
        {
            ShowInfo();
        }
    
    
        public virtual void ShowInfo() { }
    }
    
    public class Class2 : Class1
    {
        int x = 1;
        int y;
        public Class2()
        {
            y = 2;
        }
    
        public override void ShowInfo()
        {
            Console.WriteLine($"x:{x},y:{y}");
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            var class2 = new Class2();
            Console.ReadKey();
        }
    }
    会输出什么结果呢?  答案:x=1,y=0 
    注:new Class2会第一出发Class1的构造函数,直接会调用ShowInfo,因为子类重写该方法,所以会打印 x=1,y=0,后者才会触发Class2构造函数内代码。

    题目2 (X=?;Y=? 输出什么):

    public static class Class1
    {
    
        public static int Y = Class2.X + 1;
        static Class1()
        {
            
        }
    }
    
    public static class Class2
    {
        public static int X = Class1.Y;
        static Class2()
        {
            X = Class1.Y + 2;
        }
    
    }
    
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine($"X:{Class2.X};Y:{Class1.Y}");
            Console.ReadKey();
        }
    }

    答案:X:3;Y:1 ,此题目考的是静态类静态字段的使用

    题目3 (输出啥?):

    public class Class1
    {
        public Class1()
        {
            
        }
    
        public virtual void ShowInfo(int value)
        {
            Console.WriteLine(value + 1);
        }
    }
    
    public class Class2:Class1
    {
        public Class2()
        {
    
        }
    
        public override void ShowInfo(int value)
        {
            Console.WriteLine(value + 2);
        }
    }
    
    class Program
    {
        static void Main(string[] args)
        {
            var obj = new Class2();
            Class1 obj1 = obj;
            obj1.ShowInfo(2);
            Console.ReadKey();
        }
    }

    答案:输出4

    突然觉得自己记性还不错

    ! 还没吃饭呢,先把肚子安排了。。。

  • 相关阅读:
    Scrapy的架构与原理的理解【转】
    Scrapy框架的命令行详解【转】
    WPF 程序中启动和关闭外部.exe程序
    C++ 二维数组(双重指针作为函数参数)
    C++ 遇见的一些函数
    C++ #pragma 预处理指令
    C++异常处理(Exception Handling)
    C++模板学习随笔
    C++ 数组的地址问题学习随笔
    关于C++几个容易混淆的概念总结
  • 原文地址:https://www.cnblogs.com/codedisco/p/12751345.html
Copyright © 2011-2022 走看看