.NET面试题

.net面试题:

1、请说出.NET中类和结构体的区别。

结构体是值类型,类是引用类型。

2、什么是死锁?死锁的必要条件是什么?怎么克服?

死锁是指两个或两个以上进程在执行过程中,由于竞争资源或互相通讯产生的阻塞现象,没有外力的作用下他们都无法继续进行。此时称系统为死锁状态,这些在永远互相等待的进程称为死锁进程。

产生死锁的必要条件:1、互斥条件:每个资源只能被一个进程占用。2、请求与保持条件:一个进程在请求资源而阻塞时,已获得的资源保持不放。3、不剥夺条件:进程已获得资源,在未使用完之前,不能强行剥夺。4、循环等待条件:若干进程形成一种首尾等待资源关系。

克服:尽量避免以上四个条件的出现,资源分配要合理,防止进程处在等待情况下占用资源。

3、接口可以继承接口;抽象类可以实现抽象接口;只要构造函数不是私有的抽象类就可以继承实体类。

4、构造器Constructor是否可以被继承?是否可以被重写?

不可以被继承,不可以被重写。

5、是否可以继承string类?

不可以

6、当一个线程进入一个对象方法后,其他线程是否可以进入该对象的方法?

  1. 如果其他方法前加了synchronized关键字,就不能,如果没加synchronized,则能够进去。
  2. 如果这个方法内部调用了wait(),则可以进入其他加synchronized的方法。
  3. 如果其他方法加了synchronized关键字,并且没有调用wai方法,则不能。

7、什么是委托?事件是不是委托?

委托是一种安全的封装的方法;事件是一种委托;

8、Error和Exception有什么区别?

error是报错,exception是异常

9、概述反射和序列化。

序列化就是把一个对象保存到一个文件中或一个数据库字段,反序列化就是把这个文件转换成对象。

反射就是动态生成的实例。

10、Const和Readolny的区别。

Const不变常量,无法修改;

Readolny只能读取,无法修改;

11、UDP和TCP连接有何不同?

posted @ 2018-03-08 22:24  _Iniesta  阅读(132)  评论(0编辑  收藏  举报