.NET面试题汇总(8)

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 91 收藏 0 点赞 0 评论 0

82.简单工厂模式有什么作用?
工厂模式,顾名思义作用于对象的实例化(变化点在”对象创建”,封装”对象创建”)
我们一般提供一个接口,让该接口负责创建一系列”相关或者相互依赖的对象”,利用反射(Reflection)技术动态的创建实例,无需指定他们具体的类。
改变配置文件即可方便的控制对象之间的切换
83. 请编程实现一个冒泡排序的算法
int num[10] = {1,3,4,6,2,5,7,9,8,0};
for(int i = 0;i<10;i++)
{
for(int j=i+1;j<=10;j++)
{
if(num[i]>num[j])
{
int temp = num[j];
num[j] = num[i];
num[i] = temp;
}
}
}
84. 用户输入两个字符串str1,str2,返回字符串str1在str2中的出现索引数,如:str1(aba),str2(2dabab2)返回2,不可以用indexof和substring方法;
string a = “aba”;
string b = “2dabab2”;
bool bFind = false;
int index = 0;
while ((index + a.Length) != b.Length){
if (b.Substring(index).StartsWith(a)){
bFind = true;  // 找到内容
break;
}
index++;}
if (bFind){
Console.WriteLine(“索引在{0}”, index);}
else{
Console.WriteLine(“没有包含”);}
85. C#中的三元运算符
表达式 ? 结果1(表达式为true时执行) :结果2(表达式为false时执行)
86. Sealed修饰符的作用    sealed的中文意思是密封,故名思义,就是由它修饰的类或方法将不能被继承或是重写
87. 委托的关键字    delegate
88. 你熟悉的开发模式有哪些
常用的开发模式有抽象工厂模式、简单工厂模式、工厂方法模式、单例模式、外观模式、代理模式、适配器模式
89. .NET中,为什么不担心内存漏洞
垃圾回收器是用来管理应用程序的内存分配和释放的。在垃圾回收器出现以前,程序员在使用内存时需要向系统申请内存空间。有些语言,例如Visual Basic,可以自动完成向系统申请内存空间的工作。但是在诸如Visual C++的语言中要求程序员在程序代码中申请内存空间。如果程序员在使用了内存之后忘了释放内存,则会引起内存泄漏。但是有了垃圾回收器,程序员就不必关心内存中对象在离开生存期后是否被释放的问题。垃圾回收器全部自动帮你完成。
90. repeater控件的用法
Repeater没有自己的形态,需要开发人员利用模板进行设置。
Repeater支持的5种模板分别为ItemTemplate、AlternatingItemTemplate、Separator Template、HeaderTemplate、FooterTemplate
91. Session里有BUG,微软是怎么处理的
Session有丢失的可能性,微软对于Session有三种存放方式:
InProc:session在服务器中以活动对象方式存储(aspnet_wp.exe)
StateServer: session被序列化并保存在单独的aspnet_state.exe的内存中。StateServer能够运行在另一台服务器上
SQLServer: session被序列化并保存在SQL Server中
92. Datalist、GridView、Repeater 的区别
Repeater和DataList比较相似,都没有自己的形式,需要模板的支持
–Repeater支持ItemTemplate、AlternatingItemTemplate、SeparatorTemplate、HeaderTemplate、FooterTemplate 5种模板
–DataList除了以上的5种模板,还支持SelectedItemItemplate和EditItemTemplate模板以及支持RepeatColumns(每行呈现的列数)和RepeatDirection(呈现方向)
GridView有自己的形态,以网格的形式输出内容,功能比Repeater和DataList强

评论列表
文章目录