1. 传入某个属性的set方法的隐含参数的名称是什么?
      value,它的类型和属性所声名的类型相同。
    2. 如何在C#中实现继承?
      在类名后加上一个冒号,再加上基类的名称。
    3. C#支持多重继承么?
      不支持。可以用接口来实现。
    4. 被protected修饰的属性/方法在何处可以访问?
      在继承或间接继承与这个类的子类中可以访问。
    5. 私有成员会被继承么?
      会,但是不能被访问。所以看上去他们似乎是不能被继承的,但实际上确实被继承了。
    6. 请描述一下修饰符protected internal。 
      被protected internal修饰的属性/方法只能在它的在同一个程序集(Assembly)中的子类被访问。
    7. C#提供一个默认的无参数构造函数,当我实现了另外一个有一个参数的构造函数时候,还想保留这个无参数的构造函数。这样我应该写几个构造函数?
      两个,一旦你实现了一个构造函数,C#就不会再提供默认的构造函数了,所以需要手动实现那个无参数构造函数。
    8. C#中所有对象共同的基类是什么?
      System.Object.
    9. 重载和覆写有什么区别?
      重载提供了对一个方法签名的不同参数调用的实现。覆写提供了子类中改变父类方法行为的实现。
    10. 在方法定义中,virtual有什么含意? 
      被virtual修饰的方法可以被子类覆写。
    11. 能够将非静态的方法覆写成静态方法么?
      不能,覆写方法的签名必须与被覆写方法的签名保持一致,除了将virtual改为override。
    12. 可以覆写私有的虚方法么?
      不可以,甚至子类中无法访问父类中的私有方法。
    13. 能够阻止某一个类被其他类继承么? 
      可以,使用关键字sealed。
    14. 能够实现允许某个类被继承,但不允许其中的某个方法被覆写么? 
      可以,标记这个类为public,并标记这个方法为sealed。
    15. 什么是抽象类(abstract class)?
      一种不可以被实例化的类。抽象类中一般含有抽象方法,当然也可有具体实现。继承类只有实现过所有抽象类的抽象方法后才能被实例化。
    16. 何时必须声明一个类为抽象类? 
      当这个类中包含抽象方法时,或是该类并没有完全实现父类的抽象方法时。
    17. 接口(interface)是什么?
      只含有共有抽象方法(public abstract method)的类。这些方法必须在子类中被实现。
    18. 为什么不能指定接口中方法的修饰符? 
      接口中的方法用来定义对象之间通信的契约,指定接口中的方法为私有或保护没有意义。他们默认为公有方法。
    19. 可以继承多个接口么? 
      当然。
    20. 那么如果这些接口中有重复的方法名称呢? 
      这种情况中你可以决定如何实现。当然需要特别得小心。但是在编译环节是没有问题的。
    21. 接口和抽象类的区别是什么? 
      接口中所有方法必须是抽象的,并且不能指定方法的访问修饰符。抽象类中可以有方法的实现,也可以指定方法的访问修饰符。
    22. 如何区别重载方法? 
      不同的参数类型,不同的参数个数,不同的参数顺序。
    23. const和readonly有什么区别?
      const关键字用来声明编译时常量,readonly用来声明运行时常量。
    24. System.String 和System.StringBuilder有什么区别?
      System.String是不可变的字符串。System.StringBuilder存放了一个可变的字符串,并提供一些对这个字符串修改的方法。

C#面试基础问题0的更多相关文章

  1. 10个经典的C语言面试基础算法及代码

    10个经典的C语言面试基础算法及代码作者:码农网 – 小峰 原文地址:http://www.codeceo.com/article/10-c-interview-algorithm.html 算法是一 ...

  2. iOS 面试基础题目

    转载: iOS 面试基础题目 题目来自博客:面试百度的记录,有些问题我能回答一下,不能回答的或有更好的回答我放个相关链接供参考. 1面 Objective C runtime library:Obje ...

  3. 快速掌握JavaScript面试基础知识(三)

    译者按: 总结了大量JavaScript基本知识点,很有用! 原文: The Definitive JavaScript Handbook for your next developer interv ...

  4. 快速掌握JavaScript面试基础知识(二)

    译者按: 总结了大量JavaScript基本知识点,很有用! 原文: The Definitive JavaScript Handbook for your next developer interv ...

  5. 前端读者 | 前端面试基础手册(HTML+CSS)

    本文来自@羯瑞:希望前端面试基础手册能帮助要找工作的前端小伙伴~~ HTML 前端需要注意哪些SEO? 合理的title.description.keywords:搜索对着三项的权重逐个减小,titl ...

  6. 一些iOS面试基础题总结

    一些iOS面试基础题总结 目录 多线程 AutoLayout objc_msgSend Runtime 消息转发 Category NSObject 与 objc_class Runloop Auto ...

  7. 7天学完Java基础之0/7

    笔记-7天学完Java基础之0/7 1.常用命令提示符(cmd) 启动:Win+R,输入cmd​

  8. 【CUDA 基础】0.0 腾讯云CUDA环境搭建

    title: [CUDA 基础]0.0 腾讯云CUDA环境搭建 categories: CUDA Freshman tags: CUDA 环境搭建 toc: true date: 2018-02-13 ...

  9. 前端面试基础题:Ajax原理

    Ajax 的原理简单来说是在⽤户和服务器之间加了—个中间层( AJAX 引擎),通过XmlHttpRequest 对象来向服务器发异步请求,从服务器获得数据,然后⽤ javascrip t 来操作 D ...

随机推荐

  1. Codeforces Round #345 (Div. 2) E. Table Compression 并查集

    E. Table Compression 题目连接: http://www.codeforces.com/contest/651/problem/E Description Little Petya ...

  2. 用asyncio的异步网络连接来获取sina、sohu和163的网站首页

    代码如下: import asyncio async def wget(host): print('wget %s...' % host) connect = asyncio.open_connect ...

  3. ALCHEMY 2 (FLASCC)新手入门 (WINDOWS 版)

    Adobe Alchemy(炼金术) 2的预发布版本已经对开发者开放,并且已经更名为 FlasCC.炼金术简单来说就是把c/c 代码编译成swf文件,它吸收了c/c 高效的执行效率,比传统开发的swf ...

  4. Oracle错误代码ORA-01653,表空间容量无法扩展

    业务模块在进行增操作时,报错“Caused by: java.sql.BatchUpdateException: ORA-01653: 表 JAZZ_V3.T_MZ_BK 无法通过 128 (在表空间 ...

  5. jenkins的slave报错误: org.owasp.dependencycheck.data.nvdcve.DatabaseException: Exception retrieving vulnerability for cpe:/a:mysql:mysql:5.1.26

    目前的临时解决办法是通过任务分配到master节点跑

  6. [转载]Delphi事件的广播

    https://blog.csdn.net/dropme/article/details/975736 明天就是五一节了,辛苦了好几个月,借此机会应该尽情放松一番.可是想到Blog好久没有写文章,似乎 ...

  7. python学习:两个py文件间的函数调用

    本例子是测试一些数据分析模型的R值,R值越接近1,表明该模型越适合分析该数据集. 本例子是在集成开发环境Aptana Studio 3 中创建 一个dataAnaly ,然后创建modelTest.p ...

  8. asp.net 大文上传配置

    配置iis的文件上传大小控制: 今天先说一个问题,在window server2008 下配置上传文件的大小,除了工程自身的config外还需要配置一下服务器上的applicationhost.con ...

  9. My97DatePicker日历控件配置

    一. 简介 1. 简介 目前的版本是:4.72 2. 注意事项 My97DatePicker目录是一个整体,不可破坏里面的目录结构,也不可对里面的文件改名,可以改目录名 My97DatePicker. ...

  10. win8.1 64位环境搭建android开发环境

    1.下载JDK,http://www.oracle.com/technetwork/java/javase/downloads/index.html,选择版本 2.安装刚刚下载的JDK 3.环境变量配 ...