.NET面试精粹:涵盖面向对象、委托、垃圾回收等核心概念
"该资源是一份详尽的.NET面试题集,涵盖了面向对象特性、C#语法、类的访问修饰符、委托、垃圾回收、抽象类与接口等多个方面,旨在帮助求职者准备.NET相关岗位的面试。" 1. 面向对象语言的三个基本特征是继承性、封装性和多态性。继承性允许子类继承父类的属性和方法,封装性保护了数据的安全性,多态性则提供了多种形态的表现。 2. 可以使用foreach遍历的对象需要实现IEnumerable接口或声明GetEnumerator方法,这样可以使得该对象可以被迭代处理。 3. C#中的三元运算符是`?:`,用于简化条件判断的表达式。 4. 当将整数a赋值给一个object对象时,整数a会被装箱,即将值类型转换为引用类型,存储在堆上。 5. `float f = -123.567F; int i = (int)f;` 这段代码执行后,i的值会是-123,因为浮点数转换为整数时会进行截断。 6. 声明并仅声明了`==`操作符的重载时,通常还需要重载`!=`操作符,以保持逻辑一致性。同时,如果重载了等于运算符,还需要确保Override `Equals()` 和 `GetHashCode()` 方法。 7. 委托是一种类型,用于表示一个方法的引用,声明的关键字是`delegate`。 8. 使用`sealed`修饰的类不可被其他类继承,具有封闭性。 9. ASP.NET中,自定义用户控件需要继承自`System.Web.UI.UserControl`类,以便能够正常工作。 10. 在.NET中,若类需要被序列化,需要标记为`[Serializable]`,以便可以将其状态保存到文件或流中。 11. .NET的托管代码得益于垃圾收集机制(Garbage Collection, GC),开发者无需手动管理内存,从而避免了内存泄露的问题。 12. 抽象方法不能与`override`一起使用,因为`override`表明是在重写父类的方法,而抽象方法本身就是在父类中没有具体实现的。 13. 当类T声明了私有实例构造函数时,外部无法创建T的实例,也不能从T派生新的类。 14. 下面的代码中,`case ():`是无效的语法,应使用`default:`。修正后的代码示例: ```csharp switch(i){ case 0: CaseZero(); break; case 1: CaseOne(); break; default: CaseTwo(); break; } ``` 15. 在.NET中,`System.Web.UI.Page`类是可以被继承的,常用于创建自定义的ASP.NET页面基类。 这份面试题集涵盖了.NET开发中的多个核心概念,对于理解和掌握.NET技术栈有着重要的参考价值。
![](https://csdnimg.cn/release/download_crawler_static/4106633/bg4.jpg)
剩余16页未读,继续阅读
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/b08890d64e874ba4949c8c9bf2a1ab0d_sunpeileilove.jpg!1)
- 粉丝: 1
- 资源: 17
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 解决本地连接丢失无法上网的问题
- BIOS报警声音解析:故障原因与解决方法
- 广义均值移动跟踪算法在视频目标跟踪中的应用研究
- C++Builder快捷键大全:高效编程的秘密武器
- 网页制作入门:常用代码详解
- TX2440A开发板网络远程监控系统移植教程:易搭建与通用解决方案
- WebLogic10虚拟内存配置详解与优化技巧
- C#网络编程深度解析:Socket基础与应用
- 掌握Struts1:Java MVC轻量级框架详解
- 20个必备CSS代码段提升Web开发效率
- CSS样式大全:字体、文本、列表样式详解
- Proteus元件库大全:从基础到高级组件
- 74HC08芯片:高速CMOS四输入与门详细资料
- C#获取当前路径的多种方法详解
- 修复MySQL乱码问题:设置字符集为GB2312
- C语言的诞生与演进:从汇编到系统编程的革命
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)