[.Net知识点] 初二物理上册知识点

分享如何系统学习/DotNet知识点。从编程语言C#开始,到面向过程,面向对象、 C#高级编程知识、数据库及,网页请求响应原理,学习开发。

需要整理的知识点有框架基础———————————————————————————————————————————————。

什么是CLR? 它包括哪2个部分?。

通用语言运行库。包含程序的引擎和符合CLI的类库。

什么是框架? 就是CLR。

什么是CLI?。

通用语言基础结构,是一份语言和数据格式的规范。

什么是CTS?。

通用类型系统,定义了能够在CLR上运行的语言规范。

什么是CLS?。

通用语言规范,定义了所有程序需要符合的最小规范集程序开发所需的最基本环境?。

一个文字编辑器和针对编码语言的编译器。

运行程序需要什么 Framework组件。

什么程序集、应用程序域? 程序集:模块与资源文件的集合。 应用程序域:类似于OS的进程,提供代码运行范围、错误隔离和安全设置隔离的逻辑单元,其创建和开销较进程小的运行机制是什么? (1)编译C#代码。

(2)把代码编译成中间语言,并包装成装配件 (3)通过JIT将装配件编译成机器码。

什么程序集强签名?它有哪四个元素来唯一区别。 是一个带有公钥和数字签名的程序集。

四个元素是:文件名、版本号、语言文化和公钥语法基础————————————————————————————————————————————— 什么是虚方法?。

子类可以用override关键字来覆盖父类方法,实现该方法的另一种功能实现。

new关键字的作用?。

显示隐藏从父类继承的成员,目的是将一个方法替换成另一个方法

如何使得一个类不被继承? 用sealed关键字修饰此类。

什么是装箱和拆箱?装箱的作用?。

装箱就是将值类型转换为引用类型Object,使得值类型可以存储在垃圾回收堆中 拆箱就是将引用类型转换为值类型

常用的值类型有哪些?。

结构 枚举 整型 浮点型 布尔型。

关键字ref的作用? 无。

泛型ArrayList的好处是什么?(不全)。

定义了针对某个类型的容器类ArrayList的泛型集合,就能避免数据进出容器引发的大规模的装箱和拆箱操作,从而提高系统运行性能中所有内建类型的基类是什么?此基类中有哪些方法?其中哪些是虚方法?。

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,要么全用支持哪几种访问性级别,C#实现了其中的哪几种支持的访问性级别有6种,分别是Public, Private, Family,Assembly,FamilyAssembly, Family or Assembly,C#除了FamilyAssembly没有实现,其他都实现,相对应的关键字是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#中类可以有多个父类吗?可以实现多个接口吗?。

不能实现多继承,但可以实现多接口接口指一系列方法、属性、索引和事件的签名。

简述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()方法来规定调用顺序。

链式委托的返回值是怎么样的?。

委托多个有返回值的方法,只返回最后一个方法的返回值。

什么是事件?举一个简单例子。 事件是一种特殊的委托

线程:进程中的可以被调度的单元。

每个进程之间是相互隔离的,而线程之间可以相互访问。

什么是纤程?。

是一种轻量级线程

在中如何控制线程?。

提供了System.Threading.Thread类型封装了线程操作。

什么线程池?。

相当于一个缓存,以前创建的县城,当需要一个新线程时,先在里面找是否有相同的,找不到再重新创建,这样使为了降低系统开销。

lock关键字作用?。

锁定某个对象来实现线程同步。

———————————————————————————————————————————————————文件操作————————————————————————————————————————————————— 如何创建一个文件夹?。

System.IO.Directory.CreateDirectory("c:\\新建文件夹"); 或。

DirectoryInfo f = new DirectoryInfo("c:\\3"); f.Create();。

如何创建文件,并写入内容? File.Create("C:\\1.txt");。

File.Create("C:\\1.txt","内容"); 或。

StreamWriter sw=new StreamWriter("c:\\1.txt"); sw.Write("内容"); sw.WriteLine("内容———————————————————————————————————————————————————————— get和post请求有什么区别?。

get是向服务器申请资源的请求,post是向服务器发送数据的请求。 get将数据放在url地址后面。

get请求对长度和编码有限制,post没有长度限制。

session有哪几种存储方式?有何区别? IIS进程(默认)、状态服务器、SqlServer数据库、自定义保存程序 除了默认,其他都需要能够可序列化的类型数据且不易丢失。

列举页面跳转方式?。

Response.Redirect()、Server.Transfer()、JS脚本。

笔记整理。

AJAX的核心对象什么?根据不同浏览器写出创建其对象的代码? XML创建代码:

如何强制使程序线程阻塞5秒钟? System.Threading.Thread.Sleep(5000);。

请描述组成结构? 由数据提供程序和数据集组成。

数据提供程序包括Connection,Command,DataAdapter,DataReader 数据集包括DataSet等。

如何将查询结果放入DataSet虚拟表中?。

DataAdapter da=new DataAdapter(sql语句,con); DataSet ds=new DataSet(); da.Fill(ds,虚拟表名);。

请写一个分页存储过程?。

create proc usp_tablePaged @pageSize int, @pageIndex int as。

with t as ( select row_number() over(order by forumId desc) as RowNo,* from forums。

)。

select * from t。

where RowNo between @pageSize*(@pageIndex—1)+1 and @pageSize*@pageIndex go。

如何将一个数组参数添加到SqlCommand参数集合中? AddRange()方法

Sql语言中有哪三种分类?(?) TCL:事务控制语言 DDL: DML:

如何创建表索引?。

Create index index_name on 表(字段)。

set nocount on/off的作用是什么?。

on不返回数据操作语句影响的行数,off相反。

如何使实体类能够被序列化? 使用[Serializable]标记。

请简述Sql Server中锁的作用?有哪些类型的锁? 为了解决多事务并发所带来的问题;。

解决丢失更新(一个人更新数据后另一个人又更新)、脏读、不可复读 锁的分类有:共享锁、排他锁、更新锁、意向锁 锁的管理:乐观锁(不用管理)、悲观锁(程序员管理、设置事务的隔离级别)。

什么是OOD/OOA?。

如何用sql语句判断数据库中某个存储过程是否存在?。

If exsits (select type,name from sys.all_objects where type=p and name=存储过程名) 其中sys.all_objects为数据字典。

查询上一个插入语句的自动增长列号? Select @@identity。

什么是DNS?。

域名解析服务器,用于将域名转换成其ip地址。

TCP/IP包括哪些层?每个层的作用有哪些? 应用层:端口号) 传输层:TCP UDP(指定传输协议) 网络层:IP(找到IP地址)。

物理层:电气规范(定位到物理元件中虚路径转实际路径的方法? Server.MapPath(images/xx.jpg)。

如何在页面上打印html源代码?(2种) Literal控件,mode属性值改为Encode。(此控件本身不再页面产生任何代码) Server.HtmlEncode(str);。

泛型的原理是什么?泛型什么作用?写一个简单的泛型例子。

允许程序员定义更通用的类型和算法,并且在具体使用时再生成具体的类型泛型可以避免容器类操作中装箱和拆箱的问题。

页面跳转的2种方式。

Server.Transfer("b.aspx"); ——服务器端转发(1次请求)。

Response.Redirect("b.aspx"); ——客户端重定向(2次请求)。

全局应用程序中有哪些方法? Session_Start() 和 Session_End()。

什么是和aspx页面有什么区别?。

H处理程序是负责处理请求的aps,net组件,aspx页面是处理程序的一个实例。

什么是ORM?简述其原理。ORM:对象关系映射,是一种为了解决面向对象和关系型数据库存在互不匹配现象的技术,将程序中的对象自动持久化到数据库中。简单说,就是通过对对象的操作,就可以实现对数据访问的功能。 框架有N。

ORM有哪些框架(持久化框架)?。

NHibernate、Active Record和Linq(MS推出的OR技术)。

什么是持久化?持久层?。

把数据保存在可掉电的存储设备上。 持久层类似于DAL。

什么是解耦合?。

降低关联的紧密程度,分离业务逻辑和数据逻辑,分离逻辑结构和物理结构,避免因底层结构变动对上层产生较大影响。

Question。

string[] str = new string[3]; str[0] = "0"; str[1] = "1"; str[2] = "2";。

ArrayList list = new ArrayList(); list.AddRange(str); foreach (string s in list) {。

Console.WriteLine(s); }。

string[] str1 = (string[])(list.ToArray());。

//解决方法:string[] str1 = list.ToArray() as String[] Console.WriteLine(); foreach (string s in str) {。

Console.WriteLine(s.ToString()); }。

2 次访问