标签:style io ar 使用 sp on 数据 问题 bs
7、属性和public字段的区别是什么?
8、三层架构。
9、关于拆箱装箱。
10、CTS、CLR、CLS分别作何解释。
11、在dotnet中类(class)和结构体(struct)的异同。
12、堆和栈的区别。
7、属性可以对设值、取值进行非法值控制,比如年龄禁止设置为负数,
字段则不能进行这样的设置。
8、通常意义上的三层架构是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的是为了:“高内聚,低耦合。”
表现层(UI):展现给用户的界面,即用户在使用一个系统的时候的所见即所得。
业务逻辑层(BLL):针对具体问题的操作,
数据访问层(DAL):该层所做事务直接操作数据库,针对数据进行增删改查等每一层都是垂直的关系。
三层结构是N层结构的一种,一般来说,层次之间向下依赖,下层代码未确定其接口前,上层代码是无法开发的,下层代码发生的变化将使上层代码一起发生变化。
三层架构的优点:分工明确,条理清晰,易于调试,而且具有可扩展性
缺点:增加成本
9、装箱:从值类型接口转换成引用类型;拆箱:从引用类型转换成值类型
分析:CTS(Common Type System)是为了实现在应用程序声明和使用这些类型是必 须遵守的规则而存在的通用类型系统,整个系统的类型分为两大类,值类型和引用类型。
CTS中的所有东西都是对象,所有的对象都源自一个基类---System Object类型。值类型的一个最大的特点就是不能为null,值类型的变量总有一个值,为了解决值类型不能为null的问题,引入了拆箱装箱。装箱就是将值类型用引用类型包装起来转换为引用类型,而从引用类型拿到被包装的值类型数据进行拆箱
10、CTS:Common Type System 通用类型系统。Int32,Int16->int;String->string;每种语言都定义自己的类型,.Net通过CTS提供了公共的类型,然后翻译生成对应的.Net类型。
CLS:Common Language Specfication通用语言规范。不同语言语法的不同。每种语言都有自己的语法,.Net通过CLS提供了公共语法,然后不同语言生成对应的.Net语法。
CLR:Common Language Runtime 公共语言运行时。就是GC,JIT等。有不同的CLR,相当于一个发动机,负责执行IL。
11、类(Class)可以被实例化,属于引用类型,是分配在内存的堆上,类是引用传递的。结构体(Struct)是属于值类型是分配在内存的栈上的。结构体是复制传递的,Int32,Boolean等属于结构体。
12、栈是编译期间就分配好的空间,因此你的代码中必须有就栈的大小有明确的定义,局部值类型变量、值类型参数等都在栈内存中;
堆是程序运行期间动态分配的内存空间,你可以根据程序运行情况确定要分配的堆内存的大小。
标签:style io ar 使用 sp on 数据 问题 bs
原文地址:http://www.cnblogs.com/chenking/p/4129209.html