根据提供的文件信息,我们可以整理出以下关于 .NET 面试相关的知识点: ### 1. 访问修饰符 - **private**: 只能在声明它的类内部访问。 - **protected**: 在同一类或派生类中可以访问。 - **public**: 对所有类开放访问权限。 - **internal**: 只能在同一个程序集(assembly)内访问。 ### 2. ASP.NET 页面间值传递方式 - **使用 QueryString**: 如 `http://example.com/?id=1`。 - **使用 Session**: 存储用户会话数据。 - **使用 Server.Transfer**: 服务器端页面跳转,保持上下文。 - **使用 Application**: 全局应用程序范围的数据存储。 - **使用 Cache**: 缓存数据以提高性能。 - **使用 HttpContext.Items**: 存储临时键值对。 - **使用 ViewState**: 保存页面状态。 - **使用数据库**: 存储持久化数据。 - **使用 Cookie**: 客户端存储数据。 ### 3. 斐波那契数列实现 ```csharp public class MainClass { public static void Main() { Console.WriteLine(Foo(30)); } public static int Foo(int i) { if (i <= 0) return 0; else if (i > 0 && i <= 2) return 1; else return Foo(i - 1) + Foo(i - 2); } } ``` ### 4. C# 中的值类型与引用类型区别 - **值类型**:存储在栈中的类型,如 int、float 和 struct。 - **引用类型**:存储在堆上的对象的引用,如 string 和 class。 ### 5. Override 与重写概念 - **Override**:在派生类中覆盖基类的方法。 - **重写**:在派生类中提供一个新的实现方法。 ### 6. B/S 架构系统中 Session、Cookie、Application 的区别 - **Session**:服务器端存储,每个用户的会话数据。 - **Cookie**:客户端存储,用于跟踪用户信息。 - **Application**:全局应用级变量,所有用户共享。 ### 7. 清空 TextBox 控件文本 ```csharp foreach (System.Windows.Forms.Control control in this.Controls) { if (control is System.Windows.Forms.TextBox) { System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control; tb.Text = String.Empty; } } ``` ### 8. 实现冒泡排序算法 ```csharp int[] array = new int[5]; int temp = 0; for (int i = 0; i < array.Length - 1; i++) { for (int j = i + 1; j < array.Length; j++) { if (array[j] < array[i]) { temp = array[i]; array[i] = array[j]; array[j] = temp; } } } ``` ### 9. C# 中的垃圾回收机制 - C# 使用自动垃圾回收机制管理内存,无需程序员手动释放内存。 - 垃圾回收器会在适当的时候运行,释放不再使用的对象所占用的内存。 ### 10. 计算奇偶数之和 ```csharp string tNum = this.TextBox1.Text.ToString(); int sum = 0; for (int i = 0; i < int.Parse(tNum) + 1; i++) { if ((i % 2) == 1) { sum += i; } else { sum -= i; } } Console.WriteLine(sum.ToString()); ``` ### 11. .NET 中 B/S 架构与 MVC 模式的区别 - **B/S**:浏览器/服务器架构,前端负责显示,后端处理业务逻辑。 - **MVC**:模型-视图-控制器模式,分为三层结构,更加清晰地分离关注点。 - **优点**:提高了代码的可维护性和可扩展性。 - **缺点**:增加了系统的复杂度。 ### 12. 类的继承与虚方法重写 ```csharp class A { public A() { PrintFields(); } public virtual void PrintFields() {} } class B : A { int x = 1; int y; public B() { y = -1; } public override void PrintFields() { Console.WriteLine("x={0},y={1}", x, y); } } ``` 实例化 `B` 类时,控制台输出结果为 `x=1,y=-1`。 ### 13. 什么是应用程序池? - 应用程序池是 IIS 中的一个概念,用于隔离和管理 Web 应用程序的执行环境。 - 它可以提高应用程序的安全性和稳定性。 ### 14. CTS、CLS 和 CLR 的关系 - **CTS**:通用类型系统,定义了 .NET 中的所有类型。 - **CLS**:公共语言规范,定义了一组类型必须满足的标准,以便可以在任何 CLS 合规的语言中使用。 - **CLR**:公共语言运行时,是 .NET 的执行环境,提供了内存管理、线程管理和安全性等服务。 ### 15. 装箱与拆箱 - **装箱**:将值类型转换为引用类型的过程。 - **拆箱**:将引用类型的对象转换为值类型的过程。 ### 16. 什么是不安全代码? - 不安全代码是指那些使用指针操作或其他不受托管环境保护的代码。 - 在 .NET 中,使用 `unsafe` 关键字标记此类代码。 ### 17. 强类型与弱类型的区别 - **强类型**:编译器检查变量的类型,在编译阶段就能发现大多数类型错误。 - **弱类型**:允许变量之间进行隐式类型转换,可能导致运行时错误。 ### 18. .NET 数据访问技术 - **DataSet**:用于缓存数据,支持离线操作。 - **DataCommand**:执行 SQL 命令。 - **DataAdapter**:填充和更新 DataSet。 - **DataReader**:读取只读、向前的数据流。 ### 19. ASP.NET 的认证方式 - **Windows 身份验证**:默认方式,使用 Windows 凭据进行身份验证。 - **Forms 身份验证**:自定义表单进行登录验证。 - **Passport 身份验证**:微软提供的在线认证服务。 ### 20. Code-Behind 的概念 - **Code-Behind**:一种将用户界面逻辑与业务逻辑分离的技术,通常用于 ASP.NET 页面开发。 ### 21. .NET 编程范式 - .NET 支持多种编程范式,包括面向对象、函数式和命令式编程。 ### 22. 创建 WebService 的方法 - **使用 WSDL.exe 工具**:生成服务代理类。 - **使用 Visual Studio 的 Add Web Reference 功能**:添加 Web 引用并自动生成代理类。 ### 23. .NET Remoting 的工作原理 - .NET Remoting 提供了一种机制,使得不同进程或不同计算机上的对象能够相互调用方法。 - 它使用通道(channels)来传输消息,并通过序列化来处理对象的状态。 ### 24. C# 中 string 类型的 null 和空字符串的区别 - **string str = null**:表示该字符串变量未指向任何字符串。 - **string str = ""**:表示一个空字符串。 ### 25. .NET 中类和结构体的区别 - **类**:引用类型,可以包含任意数量的成员,并且实例存在于堆上。 - **结构体**:值类型,实例存在于栈上,适合小数据量和性能敏感场景。 ### 26. 委托(Delegate) - **委托**:一种引用类型,用于封装方法的引用。 - 它可以被当作方法一样传递,也可以用来创建事件。 以上就是从给定文件中提取的关键知识点,涵盖了 .NET 开发的基础知识和技术要点。
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Python基于用户的协同过滤算法和项目的协同过滤算法实现的电影推荐系统源码+报告
- 永磁电机结构介绍和设计分析
- YOLO框架讲解新版PDF
- unity-shader制作绘制网格贪吃蛇
- SIMATIC S7 Distributed Safety V5.4 SP5 更新 2-链接地址.txt
- 常见功率dBm与电压v转换表
- IBM Intelligent Data Fabric数据经纬和数据虚拟化
- 易优CMS+响应式建站模板PHP+Mysql+E000570机械扫雪设备类网站模板.zip
- 互联网安全试题及答案 选择题
- ubuntu server安装PDF
- AI Agent 技术白皮书 2024.pdf
- Javascript基础-Javascript学习笔记(一)PDF
- 2024年第九届全国固态电池研讨会(脱敏)PPT合集(41份).zip
- WebSocket连接负载平衡的实现PDF
- 基于朴素贝叶斯算法解决新闻分类问题项目源码
- 基于朴素贝叶斯的文本数据的分类与分析实验项目源码+数据(高分项目)