首页 / 面试 / 面试题整理:C#(一)
面试题整理:C#(一)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了面试题整理:C#(一),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1296字,纯文字阅读大概需要2分钟。
内容图文
![面试题整理:C#(一)](/upload/InfoBanner/zyjiaocheng/1123/75576195c3bd43818e45e63a1c1aee28.jpg)
该系列持续更新,从网上以及身边收集的问题
1.可访问性级别有哪几种
public 访问不受限制。
protected 访问仅限于包含类或从包含类派生的类型。
internal 访问仅限于当前程序集。
protected internal 访问仅限于从包含类派生的当前程序集或类型。
private 访问仅限于包含类型。
2.String和StringBuilder的区别
String类有不可改变性。每次执行字符操作时,都会创建一个新的String对象。
StringBuilder对象在初始化以后只有一个对象。
在频繁操作或拼接字符串时使用StringBuilder更好
*String是引用类型,存放在堆上
3.Struct和Class的区别
class是引用类型,structs是值类型
class创建在堆上。struct创建在栈上
class可以有初始化器,struct不可以有初始化器
class可以有明显的无参数构造器,但是Struct不可以
class使用前必须实例化,struct不需要
class支持继承和多态,struct不支持
class的构造器不需要初始化全部字段,struct的构造器必须初始化所有字段
class有面向对象的扩展优势,struct有性能优势
4.应用程序域?托管代码?强类型系统?装箱和拆箱?重载?
应用程序域(AppDomain)
可以看成轻量级的进程,一个进程中可以包含多个应用程序域,一个应用程序域可以装载一个可执行程序(*.exe)或者多个程序集(*.dll)。这样可以使应用程序域之间实现深度隔离,即使进程中的某个应用程序域出现错误,也不会影响其他应用程序域的正常运作
托管代码(Managed Code)
中间语言(IL)代码,由公共语言运行库(CLR)执行的代码,而不是由操作系统直接执行,由CLR转换为计算机语言解释给计算机
强类型系统
所有变量必须被指定类型,没有强制类型转化前,不允许两种不同类型的变量相互操作
装箱和拆箱
箱是将值类型转换为引用类型,拆箱是将引用类型转换为值类型
重载
同一个类中有两个或多个名字相同但是参数不同的方法
5.CTS、CLS和CLR分别作何解释?
http://www.cnblogs.com/zagelover/articles/2741370.html
CTS通用类型系统(Common Type System)
描述了类型的定义和行为。
CLS通用语言规范(Common Language Specification)
是CTS的一个子集,它定义了希望编写在.NET平台上运行的程序的语言所需符合的最小规范
CLR公共语言运行库(Common Language Runtime)
CLR是CTS的实现,也就是说,CLR是应用程序的执行引擎和功能齐全的类库,该类库严格按照CTS规范实现。
6.GC是什么
CLR垃圾回收机制,根据"代"自动回收堆上不被引用的对象
To be continue...
原文:http://www.cnblogs.com/alex09/p/4434984.html
内容总结
以上是互联网集市为您收集整理的面试题整理:C#(一)全部内容,希望文章能够帮你解决面试题整理:C#(一)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。