• C#面向对象面试题集锦


    1.简述C#中的虚方法

    答:注意:当使用virtual关键字修饰符后,不允许再同时使用abstract,static,或override关键字进行修饰

    使用virtual关键字修饰的方法就是虚方法,虚方法的关键字用于修饰属性方法.索引器或事件声明,并使他们可以在

    派生类中被重写.虚方法必须并提供派生类覆盖该方法的选项,并且必须有实现部分,虚方法的作用是可以在派生类中被

    重写.

    2.简述C#中的密封类和密封方法

    答:密封类使用sealed关键字进行修饰,他不能用作其他类的基类,并且他没有派生类.密封类的作用是防止其他类继承该类

    密封方法是使用sealed关键字进行修饰的方法,它并不影响类的继承,但它可以防止重写基类中特定的虚方法.

    3.C#静态类构造方法特点

    答:注意:静态构造方法,是在构造方法的名字前使用static关键字修饰符的构造方法.

    C#中静态类构造方法最主要的特点是:静态的构造方法是最先被执行的构造方法,并且在一个类里只允许有一个无参的静态构造方法.

    4个特点如下:只允许有一个无参的静态构造方法在一个类中存在.

          静态的构造方法不会被继承

          在所有的静态成员被引用之前执行静态构造方法

          在所有的构造方法中最先被执行的是静态的构造方法.

    4.简述C#派生类中的构造函数

    答:使用C#派生类中的构造函数时,需要注意关键字base和this的区别,关键字base表示调用基类中的构造函数,而this表示调用本类中的构造函数.

    5.简述接口和接口继承

    答:C#中接口具有9中特性:

          1.接口只定义,不包含方法的实现

          2.接口可以包含方法,属性.事件和索引器

          3.接口成员必须是公共的

          4.接口不能直接实例化

          5,接口不能包含任何字段

          6.接口描述可属于任何类或结构的一组相关行为.

          7.接口自身均可以从多个接口继承

          8.类和结构可以从多个接口继承

          9.接口类似于抽象类,但继承接口的类型必须实现接口中的所有定义成员对象.

    接口是把隐式公共方法和属性组合起来,以封装特定功能的一个集合.当定义了接口,就必须在继承类中实现它,这样类就支持接口中所

    指定的所有属性和成员.

    6.简述事件机制

    答:事件是.net程序员中经常使用的一个机制,事件是一种使对象或类能够提供通知的成员,客户端可以通过提供事件处理程序为相应的

    事件添加可执行代码,事件可以理解为一种特殊的委托.

    7.什么是委托

    答:本质上,委托的调用就是执行了在定义委托时所生成的Invoke()方法

    C#中的委托类都继承自Systen.Delegate类型,委托类型的声明与方法签名相似,有一个返回值和任意数目类型的参数.

    委托是一种可用于封装命名或匿名方法的引用类型.委托类似于函数指针,但是委托是类型安全和可靠的.

    8.C#中被委托的方法必须是静态的嘛?

    答:通过上面的分析读者可以清晰地判别,委托不仅能绑定静态方法,同时也可绑定实例方法.当绑定实例方法时,Delegate.Target属性将会设置成指向该实例方法所属类型的一个实例对象,当绑定静态方法时,Delegate.Target属性将会设置成null;

  • 相关阅读:
    使用Linq 更新数据库时遇到的一些问题及解决办法
    Asp.net 初级面试(转)
    jQuery设计思想
    WinCE BSP的BIB文件介绍
    团队管理经验(转)
    35岁以前成功的9大好习惯
    早起的十个好处,以及如何做到早起
    男人魅力的九个方面
    SQL优化34条(转)
    深入理解Javascript闭包(closure)
  • 原文地址:https://www.cnblogs.com/taomylife/p/3529971.html
Copyright © 2020-2023  润新知