DotNet笔试重点解析:面向对象、用户控件与类结构差异

5星 · 超过95%的资源 需积分: 9 4 下载量 69 浏览量 更新于2024-11-25 收藏 53KB DOC 举报
"这是一份关于dotnet笔试题的总结,涵盖了面向对象思想、ASP.NET用户控件、字符串处理、类与结构的区别、DataReader与DataSet的差异以及C#中接口和类的异同等多个知识点。" 1. 面向对象的思想: 面向对象编程(OOP)是一种编程范式,主要由三个核心概念构成:封装、继承和多态。封装是将数据和操作这些数据的方法捆绑在一起,防止外部直接访问。继承允许子类继承父类的属性和方法,从而实现代码复用。多态则意味着一个名称可以表示多种不同的行为,如方法的重载(方法名相同但参数列表不同)和重写(子类重新定义父类的方法)。 2. ASP.NET中的用户控件: 用户控件(ASCX)是可重用的自定义UI组件,可以在多个页面中拖放使用。它们有助于代码组织,但需要注意在不同目录下使用时,相对路径可能需要调整。用户控件不同于服务器控件(自定义控件),更适合用于静态或少量动态内容的场景,功能上类似于ASP中的Include,但更为强大。 3. 字符串处理: 在C#中,`string str = null` 指定了一个空引用,没有分配内存空间。而 `string str = ""` 创建了一个长度为零的字符串,分配了内存空间。这意味着空字符串是一个实际的对象,而空引用不是。 4. 类与结构的异同: 在dotnet中,类是引用类型,实例化在堆上,可以进行多态操作并支持继承(但仅限单一继承)。而结构是值类型,存储在栈中,不支持继承,但效率较高。结构适用于小对象,因为它们不会引起垃圾回收。类通常用于创建较大的、更复杂的对象。 5. DataReader与DataSet的区别: DataReader是流式数据访问,始终保持对数据库的连接,占用内存少,适合大量数据的连续读取。而DataSet是离线数据容器,一次性加载所有数据,断开数据库连接,提供更多灵活性,如添加、删除和更新数据,但消耗更多内存。 6. C#中的接口和类: 接口定义了一组方法和属性,不包含实现,允许类实现多个接口实现多继承。类是具体实现的蓝图,可以包含数据成员和方法,且在C#中只能单继承一个类。继承接口的类必须实现接口中声明的所有成员。 这份总结提供了对dotnet开发基础的全面回顾,对于准备dotnet笔试或面试的开发者来说非常有价值。