.NET知识点整理
更新时间:2023-10-18 21:22:01 阅读量: 综合文库 文档下载
- .net知乎推荐度:
- 相关推荐
需要整理的知识点有:.NET、SQL、JS、CSS、AJAX
----------------------------------------------------.NET框架基础----------------------------------------------- 什么是CLR? 它包括哪2个部分?
通用语言运行库。包含.NET程序的引擎和符合CLI的类库。
什么是.NET框架? 就是CLR。
什么是CLI?
通用语言基础结构,是一份语言和数据格式的规范。
什么是CTS?
通用类型系统,定义了能够在CLR上运行的语言规范。
什么是CLS?
通用语言规范,定义了所有.NET程序需要符合的最小规范集。
.NET程序开发所需的最基本环境?
一个文字编辑器和针对编码语言的编译器。
运行.NET程序需要什么? .NET Framework组件。
什么是程序集、应用程序域? 程序集:模块与资源文件的集合。 应用程序域:类似于OS的进程,提供代码运行范围、错误隔离和安全设置隔离的逻辑单元,其创建和开销较进程小。
.NET的运行机制是什么? (1)编译C#代码
(2)把代码编译成中间语言,并包装成装配件 (3)通过JIT将装配件编译成机器码
什么是程序集强签名?它有哪四个元素来唯一区别。 是一个带有公钥和数字签名的程序集。
四个元素是:文件名、版本号、语言文化和公钥。
-------------------------------------------------C# .NET语法基础--------------------------------------------- 什么是虚方法?
子类可以用override关键字来覆盖父类方法,实现该方法的另一种功能实现。
new关键字的作用?
显示隐藏从父类继承的成员,目的是将一个方法替换成另一个方法。
如何使得一个类不被继承? 用sealed关键字修饰此类
什么是装箱和拆箱?装箱的作用?
装箱就是将值类型转换为引用类型Object,使得值类型可以存储在垃圾回收堆中 拆箱就是将引用类型转换为值类型
常用的值类型有哪些?
结构 枚举 整型 浮点型 布尔型
关键字ref的作用? 无
泛型ArrayList的好处是什么?(不全)
·定义了针对某个类型的容器类ArrayList的泛型集合,就能避免数据进出容器引发的大规模的装箱和拆箱操作,从而提高系统运行性能。
.net中所有内建类型的基类是什么?此基类中有哪些方法?其中哪些是虚方法?
System.Object 其主要方法有Equals() ToString() GetHashCode(),前两个是虚方法,需要被重写。
所有值类型的基类是什么?
System.ValueType,但也是继承自System.Object
值类型和引用类型的区别?有3点 1、内存分配上
值类型在堆栈上分配内存空间,引用类型在堆上分配内存空间。 2、赋值时的区别 对于值类型,变量直接获得值类型的数据副本,对于引用类型,变量获得的是其对象的引用。 3、类型比较
对于值类型,直接内容比较,对于引用类型,是引用比较。
C#中是否有全局变量
没有传统意义的全局变量,c#程序中任何对象数据必须属于某个类型,但是通过公共静态变量可以实现全局变量的功能。
结构和类的区别是什么,结构适用于那些场合?
结构是值类型,不具备继承特性,不能定义虚方法和抽象方法,不能有无参构造函数,不能为成员变量设初值。
当一个类型仅仅是原始数据集合且不需要复杂操作时,定义为结构,因为结构作为值类型,对象内存分配和回收效率相对较高。
什么是类型的初始化器?Q
类型的初始化器是指具有和类型相同名字、无参数无返回的一个static方法。
C#中方法的参数可以有哪几种传递方式?Q
有三个关键字可以修饰方法的参数:ref、out、params。
ref和out是引用传递,区别是ref要求参数传递前必须初始化,而out则不需要; params实现了参数数目可变的方法,可以直接传入变量集合而无需声明数组。
C#中string和String以及object和Object有什么区别?
是同一个类型的两个名字,没有太多区别,string是String的别名,object是Object的别名。 但就编码规范来说,系统中最好使用一种,要么全用string,要么全用String。
.NET支持哪几种访问性级别,C#实现了其中的哪几种?
.NET支持的访问性级别有6种,分别是Public, Private, Family,Assembly,Family&Assembly, Family or Assembly,C#除了Family&Assembly没有实现,其他都实现,相对应的关键字是public,private,protected,internal,protect internal
什么是属性?它有什么优点?它和方法有什么区别? 属性是指有返回值无参数的特殊方法; 优点就是属性具有很好的扩展性。(尝试举例p64)
和方法区别就是代替了早期的GetXXX/SetXXX方法,方便使用以及使代码可读性提高。
简述C#中的浅复制和深复制。
foreach循环语句和其他循环语句相比有何优点?有何局限?
foreach循环语句适合遍历实现了IEnumberable接口的容器类,但不允许直接修改遍历项目的值,但可调用其方法来修改,其执行效率较高,在开发中应优先考虑使用。
C#中的using语句有什么作用?
using语句为实现IDisposable的类对象在using块结束后,自动调用Dispose()方法释放资源,相当于一个try/catch块,相当于一个异常处理块,所有对象应该在using语句开始后创建对象。
System.String是值类型还是引用类型?
是引用类型,其对象初始化后不能再做修改,一旦修改表示一个新字符串的生成。
StringBuilder类型有何作用?
当一个字符串被修改、连接等操作,最终生成需经过组装过程,期间会产生很多不需要的临时字符串对象,大大影响了程序性能,所以用StringBuilder类解决这个问题,一旦此类的ToString()方法被调用时,生成最终字符串对象。
String和Byte[]之间的互相转换?(用到哪个类和哪2个方法) Encoding.UTF8.GetBytes(字符串对象);
Encoding.UTF8.GetString(字节数组对象);
什么是字符串池机制?
CLR会保留程序中出现过的字符串对象集合,在需要新字符串时在其中查找,找到则返回已有对象引用,致力于改善程序性能。(当然也可以使用StringBuilder类代替String类)
Int[]是值类型还是引用类型?
数组类型是一个类型族,都继承自System.Array,而System.Array又继承自System.Object,所以是引用类型。
C#中类可以有多个父类吗?可以实现多个接口吗?
不能实现多继承,但可以实现多接口。.NET接口指一系列方法、属性、索引和事件的签名。
简述C#中重写、重载和隐藏的概念。 重写(override):是指子类用Override关键字重新实现定义在父类中的虚方法,并在实际运行时根据对象类型来调用相应的方法。
隐藏:是指子类用new关键字重新实现定义在父类中的方法,但在实际运行时只能根据引用来调用相应的方法。 重载(overload):拥有相同名字和返回值的方法拥有不同的参数列表。
为什么不能在构造函数中调用虚方法?
一个类的构造顺序是:先初始化成员变量,然后执行父类构造函数,然后执行自己的构造函数。也就是说当子类被创建时,现调用父类构造函数,其中含有虚方法,即子类构造函数中将重写此虚方法,然而此时子类构造还未完成,则对于为构造的子类成员访问是错误的。
如何声明一个类不能被继承? 用sealed关键字
进行类型判断时或者类型转换时如何更高效和避免异常? 用is和as关键字。
什么是泛型?泛型有什么好处?
泛型允许程序员定义更通用的类型和算法,并且在具体使用时再生成具体类型。 能够避免容器类的装箱和拆箱问题。
什么是泛型的主要和次要约束?
主要约束指泛型的参数必须是引用类型,次要约束是指泛型的参数必须实现的接口。
什么是STL模板库?
是一种通用的、高效的算法、容器和迭代器的集合,有助于程序员更加高效的开发和节省时间。
--------------------------------------------------委托和事件-----------------------------------------------------
什么是委托?委托有什么优点?你什么时候会用到委托。
委托是一个继承自System.Delegate的类,每个委托变量都至少绑定了一个方法,当调用委托方法时,就会调用绑定到委托对象上的方法。
委托使程序更具有扩展性和灵活性,减少类与类之间的耦合度。
一个叫做stop()的方法要关闭多种电器,当需要添加新电器时不得不修改stop()方法;而用委托只需声明一个委托变量,将控制某种电器关闭方法绑定到此委托就可以了。
委托绑定实例方法和静态方法有什么区别?
委托内部有两个成员变量,_target和_methodPtr,当绑定实例方法时,_target的值为该方法所在类的实例对象,_methodPtr为该方法;当绑定静态方法时,_target则为null。
什么时链式委托?请举个简单例子。 就是多点委托。
public delegate void stopDelegate(); public static void stopTV() {
Console.WriteLine(\关闭电视机\); }
public static void stopLight() {
Console.WriteLine(\关灯\); }
public static void stopFan() {
Console.WriteLine(\关电扇\); }
static void Main(string[] args) {
stopDelegate stop = stopTV; stopDelegate stop2 = stopLight; stopDelegate stop3 = stopFan;
stopDelegate stopHead = stop + stop2 + stop3; //链表头 stopHead(); }
链式委托执行顺序是怎样的?
委托结构里有个_prev变量指定链表中最后一个委托对象。 用Combine()方法来规定调用顺序。
链式委托的返回值是怎么样的?
委托多个有返回值的方法,只返回最后一个方法的返回值。
什么是事件?举一个简单例子。 事件是一种特殊的委托。
正在阅读:
.NET知识点整理10-18
差动保护整定计算10-21
防洪防汛防台安全专项方案01-07
小青蛙幼儿园小班教案【优秀4篇】03-26
2016-2021年中国LED车灯行业竞争格局分析及发展前景预测报告08-26
杭州市建筑工程竣工验收备案细则10-04
制药机械数控化项目可行性研究报告(发改立项备案+2013年最新案例范文)详细编制方案03-11
合同范本,2022年合同范本大全08-01
质量检验与质量管理体系 - 图文05-23
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 知识点
- 整理
- NET
- 基层国税部门涉税网络舆情应对策略探析
- 自治区中小企业集合票据发行企业申请表
- 电能计量测评级试题
- 嘉兴市示范船厂名单
- 教育学基础 第一章 练习题与参考答案
- 个人理财规划复习题(1)
- 你会对心上人说什么情话?Words You Would Deliver to Someone You Love 2011-12-06
- 批处理延时大全
- 2018年高考语文复习计划
- 徐宇宁同志在全市工程建设领域突出问题专项治理工作总结暨整治规范建设工程招投标市场动员大会上的讲话
- 第八章 肉鸡生产-2005 - 图文
- 霍邱县小型病险水库除险加固规划报告
- 推荐下载:2019年春工作计划外国语学院学生会学术科技部
- 单片机原理及应用期末复习题库
- 第12章 产业投资概述习题
- 空气站作业指导书 - 图文
- 金融学(第二版)试题和答案
- 自动化生产线安装试卷复习题
- 施工组织设计 - 图文
- 2018两学一做入党积极分子思想汇报