.net 面试基础题

Reference Link:http://www.yjbys.com/bbs/326026.html

const关键字用来声明编译时常量,readonly用来声明运行时常量

密封类不能同时为抽象类

可以覆写私有的虚方法吗?
答:不可以,甚至子类中无法访问父类中的私有方法 

base 表示当前对象基类的实例(使用base关键字可以调用基类的成员)this表示当前类的实例

在静态方法中不可以使用base和this关键字

派生类会继承基类所有的成员但是构造函数和析构函数不会被继承

注意如果派生类的方法和基类的方法同名则基类中的方法将会被隐藏如果需要隐藏则可以使用关键字new来隐藏如果不写new关键字默认处理为隐藏虽然基类中同名的方法被隐藏了但是还是可以通过base关键字来调用

C#中的堆和栈

栈(Stack)由系统管理生存期,存储代码执行和调用路径,执行或调用完毕即从栈中清除;
堆(Heap)中保存值和对象,调用完毕之后依然存在,由垃圾回收器查找栈中有无指向该值或对象的引用,无则从堆中删除

你对泛型了解吗?简单说明一下泛型的有什么好处?

泛型:通过参数化类型来实现在同一份代码上操作多种数据类型。利用“参数化类型”将类型抽象化,从而实现灵活的复用
好处是——类型安全和减少装箱、拆箱。提高性能、类型安全和质量,减少重复性的编程任务 

 DateTime是否可以为null? 不能,因为其为Struct类型,而结构属于值类型,值类型不能为null,只有引用类型才能被赋值null

GET请求请提交的数据放置在HTTp请求协议头中,而pOST提交的数据则放在实体数据中;

在使用 pOST 方法的情况下,传输数据时不会将数据作为 URL 的一部分;它们会作为一个独立的实体来传输。因此,pOST 方法更安全,你也可以用这个方法传输更多的数据。而且用 pOST 传输的数据不一定要是文本,用 GET 方法传输的却一定要是文本

remoting和webservice两项技术的理解以及实际中的应用。
答:WS主要是可利用HTTp,穿透防火墙。而Remoting可以利用TCp/Ip,二进制传送提高效率。

深度复制与浅度复制

Thread.Sleep():使线程立即暂停运行指定时间/休眠指定时间,过了指定时间可自动恢复运行,不会释放对象锁

Object 的Wait 方法:使当前线程放弃对对象的使用权进入等待队列,会释放对象锁,必须放在sychnoised 块中,需要notify 唤醒.

存储过程的 优缺点:http://blog.csdn.net/jackmacro/article/details/5688687

二分算法:http://blog.csdn.net/chenqiang35/article/details/3913130

原文地址:https://www.cnblogs.com/special-tao/p/4346055.html