(我只是个努力的搬运工,别人整理的,暂时发布,供我自己复习的。)
目录
1.你对泛型了解吗?简单说明一下泛型的有什么好处?
6.2 .NET WinForm部分
6.3 .NET Web开发部分
6.4 数据访问部分
6.5 集群与分布式
6.6 其他部分
1.你对泛型了解吗?简单说明一下泛型的有什么好处?
泛型:“泛型”的字面意思就是广泛的类型。通过参数化类型来实现在同一份代码上操作多种数据类型。利用“参数化类型”将类型抽象化,从而实现灵活的复用 好处是——可以复用代码,降低耦合性,而且还提高了代码的可读性以及安全性。
2 DateTime.Parse(myString); 这行代码有什么问题?
有问题,当myString不能满足时间格式要求的时候,会引发异常,建议使用DateTime.TryParse()
3 XML 与 HTML的主要区别?
- 1. XML是区分大小写字母的,HTML不区分。
- 2. 在HTML中,如果上下文清楚地显示出段落或者列表键在何处结尾,那么你可以省略结束标记。在XML中,绝对不能省略掉结束标记。
- 3. 在XML中,拥有单个标记而没有匹配的结束标记的元素必须用一个 / 字符作为结尾。这样分析器就知道不用 查找结束标记了。
- 4. 在XML中,属性值必须分装在引号中。在HTML中,引号是可用可不用的。
- 5. 在HTML中,可以拥有不带值的属性名。在XML中,所有的属性都必须带有相应的值。
4 请简述结构和类的区别
- 1、类型不同:结构是一种值类型,而类是引用类型。
- 2、存储不同:结构使用栈存储,而类使用堆存储。栈的空间相对较小.但是访问效率相对较高.堆的空间相对较大.但是访问效率相对较低。
- 3、作用不同:类是反映现实事物的一种抽象,而结构体的作用只是一种包含了具体不同类别数据的一种包装,结构体不具备类的继承多态特性。
- 4、初始化不同:类可以在声明的时候初始化,结构不能在申明的时候初始化(不能在结构中初始化字段),否则报错。
5 请解释一下IClonable
IClonable方法是实现深度复制的接口,实现它应该能深度复制一个对象出来。深度复制的特征的调用对象的构造方法,创建新的对象,包括创建对象中嵌套的引用对象的新实例。而Shadow复制则不同,是浅表复制,不重新创建新实例。浅表复制的实现是Object.MemberWiseClone().
深度复制(Deep Copy)与浅表复制(Shadow Copy)
6 用接口或父类作为输入的参数有什么好处?返回值如果是接口是为了什么?
接口或父类作为参数,所有继承了此接口或父类的类都可以使用,即你给此方法传参数的时候,可以把继承了这个接口或父类的类的实例传给这个方法。可以一次性传入多种字段、方法等而不用定义多个形参,接口作为返回值,返回的是实现接口的对象。
7 = 和 == 的区别?
= 是赋值运算符, ==是关系运算符,用于等值判断
8 数组有没有length()这个方法?String 有没有length()这个方法?
数组是没有length()这个方法的,有length这个属性,可以计算数组的长度。
String是有length()这个方法的,用来计算字符串的长度。
9 数组和泛型集合的区别
泛型集合只能放定义类型的元素,会自动增大,取出时不用做类型转换。
数组只能放定义类型的元素,不会自动增大,取出时不用做类型转换。
10 System.Object中有什么方法?有什么用?
- 1.ToString():是获取对象的字符串表示的一种快捷方式
- 2.Finalize():允许对象在垃圾回收该对象之前尝试并执行释放资源并执行其他清理操作
- 3.GetType():获取当前实例的确切运行时类型
- 4.GetHashCode():用作特定类型的哈希函数
- 5.构造函数方法:主要用来在创建对象时初始化对象
11 Linq中concat union intersect的区别
Concat :连接两个序列。
Union : 通过使用默认的相等比较器生成两个序列的并集。
Intersect : 通过使用默认的相等比较器对值进行比较生成两个序列的交集。
12 请问哈希表(hashtable)是如何存储数据的?
以哈希表的形式存储数据,数据的形式是键值对。
13 .NET中的CTS、CLS和CLR
- CLR公共语言运行库
- CLS通用语言规范
- CTS通用类型系统
14 NET和C#的区别
.NET一般指.Net Framework框架,是Microsoft为开发应用程序而创建的一个具有革命意义的平台,C#运行在.NET(CLR)上的,用于创建应用程序的一种高级编程语言。
15 设计模式有哪些?
- 1.单例设计模式
- 2.工厂设计模式
- 3.代理设计模式
- 4.观察者设计模式
- 5.适配器模式
- 6.原型模式
16 StringBuilder 和 String的区别?
String是不可变化的字符,它只能赋值一次,每一次内容发生改变,都会生成一个新的对象。
StringBuilder是可以变化的字符,每次操作都是对自身对象进行操作,而不是生成新的对象,其所占空间会随着内容的增加而扩充。
17 Linq与SQL语句的执行速度哪个更快?
SQL语句的执行速度更快
18 C#代码编译成中间语言有什么作用?
优点:一是可以实现平台无关性,既与特定CPU无关;二是只要把.NET矿建某种语言编译成IL代码,就实现.NET矿建中语言之间的交互操作。
IL是.NET矿建中的中间语言(Intermediate Language)的缩写。
6.2 .NET WinForm部分
1 在.NET(C# or vb.net)中如何取消一个窗体的关闭?
private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel=true;
}
2 在.NET(C# or vb.net)如何启动另一个程序
Process.Start("cmd");
3 在.net(C# or vb.net)中,Appplication.Exit() 和 Form.Close()有什么不同
Appplication.Exit()是退出整个应用程序,Form.Close()是关闭其中一个form。文章来源:https://www.toymoban.com/news/detail-477043.html
4 DataGridView的DataSource可以连接什么数据源?文章来源地址https://www.toymoban.com/news/detail-477043.html
- 第一种:
- DataSet ds=new DataSet ();
- this.dataGridView1.DataSource=ds.Tables[索引或表名];
- 第二种:
- ArrayList al = new ArrayList();
- this.dataGridView1.DataSource = al;
- 第三种:
- Dictionary<string, string> dic = new Dictionary<string, string>();
- this.dataGridView1.DataSource = dic;
- 第四种:
- DataView dv = new DataView();
- this.dataGridView1.DataSource = dv;
到了这里,关于常规技术面试题(.NET)下一部分的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!