zoukankan      html  css  js  c++  java
  • Asp.NET 知识点总结(一)

    1.简述 private、 protected、 public、 internal 修饰符的访问权限。

    答 . private : 私有类,私有成员, 在类的内部才可以访问。

    protected : 保护成员,该类内部和继承类中可以访问。

    public : 公共成员,完全公开,没有访问限制。

    internal: 内部访问类,只限于本项目内访问,其他不能访问。

    2.列举ASP.NET 页面之间传递值的几种方式。

    QueryString, 如....?id=1; response. Redirect()....Request.QueryString["name"];

    优点:使用简单,传递数字和文本值非常有效; 缺点:安全性不高,不能传递对象。

    使用Session变量 ;
    优点:使用简单,不仅能传递简单数据类型,还能传递对象。
    缺点:数据量大小是不限制的。在Session变量存储大量的数据会消耗较多的服务器资源,容易丢失。

    使用cookie用于浏览器上存储小块的信息,保存用户的相关信息,方便下次检索,必须字符串
    优点:使用简单,是保护用户状态常用方法
    缺点:安全不高,收集用户信息
    使用:HttpCookie objCookie = new HttpCookie("myCookie","Hello,Cookie!");Response.Cookies.Add(cookie);

    Application 
    Application对象的作用范围是整个全局,也就是说对所有用户都有效。它在整个应用程序生命周期中都是有效的,它和Session变量的区别在于,前者是所有的用户共用的全局变量,后者是各个用户独有的全局变量。

    优点:使用简单,消耗较少的服务器资源。缺点:1.作为全局变量容易被误操作。

    使用Server.Transfer
    Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效;

    3.C#中的委托是什么?事件是不是一种委托?

    委托可以把一个方法或多个方法作为参数代入另一个方法。

    委托可以理解为指向一个函数的引用,是引用类型。

    是,是一种特殊的委托。在NET事件模型,建立在委托机制上,它实现了对委托的封装。

    4.override(重写)与重载(overload)的区别

    override 与重载的区别。

    重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要

    Override 是进行基类中函数的重写。为了适应需要面向对象的多态性。

    5.描述一下C#中索引器的实现过程,是否只能根据数字进行索引?

    答:不是。可以用任意类型。

    6.用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层?

    答:一般为3层

    数据访问层,业务层,表示层。

    数据访问层对数据库进行增删查改。

    业务层一般分为二层,业务表观层实现与表示层的沟通,业务规则层实现用户密码的安全等。

    表示层为了与用户交互例如用户添加表单。

    优点: 分工明确,条理清晰,易于调试,而且具有可扩展性。

    缺点: 增加成本

    7.什么叫应用程序域?

    答:应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小。

    8.CTS、CLS、CLR分别作何解释?

    答:CTS:通用语言系统;CLS:通用语言规范;CLR:公共语言运行库;

    9.什么是装箱和拆箱?

    答:从值类型接口转换到引用类型装箱。从引用类型转换到值类型拆箱。

    10.什么是受管制的代码?

    答:unsafe:非托管代码。不经过CLR运行。

    11.什么是强类型系统?

    答:RTTI:类型识别系统。

    12.net中读写数据库需要用到那些类?他们的作用?

    答:DataSet:数据存储器。用来存储表的数据,并包含各表之间的联系。

    DataCommand:执行语句命令。

    DataAdapter:数据的集合,用语填充。用来将数据填充到dataset或datatable

    datatable:用来存储一个表的数据;

    sqlconnection:用来创建一个到数据库的连接。

    dataReader:用来顺序读取数据;

    13.ASP.net的身份验证方式有哪些?分别是什么原理?

    答:Windows: 使用IIS验证方式。;IIS根据应用程序的设置执行身份验证。要使用这种验证方式,在IIS中必须禁用匿名访问。

    Forms: 使用基于窗体的验证方式.用Cookie来保存用户凭证,并将未经身份验证的用户重定向到自定义的登录页。

    Passport: 采用Passport cookie验证模式..通过Microsoft的集中身份验证服务执行的,为成员站点提供单独登录和核心配置文件服务; None: 不采用任何验证方式

    14.什么是Code-Behind技术?

    答:ASPX,RESX和CS三个后缀的文件,这个就是代码分离.实现了HTML代码和服务器代码分离.方便代码编写和整理.

    15.在.net中,配件的意思是?

    答:程序集。(中间语言,源数据,资源,装配清单)

    16.常用的调用WebService的方法有哪些?

    答:1.使用WSDL.exe命令行工具。

    2.使用VS.NET中的Add Web Reference菜单选项

    17.net Remoting 的工作原理是什么?

    答:服务器端向客户端发送一个进程编号,一个程序域编号,以确定对象的位置。

    18.在C#中,string str = null 与 string str = “” 请尽量使用文字或图象说明其中的区别。

    答:string str = null 是不给他分配内存空间,而string str = "" 给它分配长度为空字符串的内存空间。

    19.请详述在dot.net中类(class)与结构(struct)的异同?

    答:Class可以被实例化,属于引用类型,是分配在内存的堆上的,

          Struct属于值类型,是分配在内存的栈上的.

    20.分析以下代码,完成填空

    string strTmp = "abcdefg某某某";

    int i= System.Text.Encoding.Default.GetBytes(strTmp).Length;

    int j= strTmp.Length;

    以上代码执行完后,i= j=  

    答:i=13,j=10

    21.简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。

    答:WS主要是可利用HTTP,穿透防火墙。而Remoting可以利用TCP/IP,二进制传送提高效率。

    22.面向对象的语言具有________性、_________性、________性

    答:封装、继承、多态。

    23.能用foreach遍历访问的对象需要实现 ________________接口或声明________________方法的类型。

    答:IEnumerable 、 GetEnumerator。

    其实IEnumerable接口是非常的简单,只包含一个抽象的方法GetEnumerator(),它返回一个可用于循环访问集合的IEnumerator对象。IEnumerator对象有什么呢?它是一个真正的集合访问器,没有它,就不能使用foreach语句遍历集合或数组,因为只有IEnumerator对象才能访问集合中的项.GetEnumerator方法返回对另一个接口System.Collections.IEnumerator的引用。这个接口提供了基础设施,调用方可以用来移动IEnumerable兼容容器包含的内部对象。

    24.GC是什么? 为什么要有GC?

    答:GC是垃圾收集器。程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:

    System.gc()

    Runtime.getRuntime().gc()

    25.String s = new String("xyz");创建了几个String Object?

    答:两个对象,一个是“xyx”,一个是指向“xyx”的引用对象s。

    26.abstract class和interface有什么区别?

    答:声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况,不能创建abstract 类的实例。

    接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的,接口中的所有方法都是抽象的,没有一个有程序体。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

    相同点:

    都可以被继承;都不能被实例化;都可以包含方法,声明;派生类必须实现未实现的方法;

    不同点:

    A.接口是抽象类的实体,接口中所有的方法必须是抽象的,抽象类是声明相同方法的存在而不去实现他的类;

    B.接口可以多继承,而抽象类不行;

    C.接口可定义方法不能实现,而抽象类可实现部分

    27.启动一个线程是用run()还是start()?

    启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。

     run()方法可以产生必须退出的标志来停止一个线程。

    28.接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?

    答:接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。

    29.构造器Constructor是否可被override?

    答:构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。

    30.是否可以继承String类?

    答:String类是final类故不可以继承。

  • 相关阅读:
    JAVA 时间 Date Long String类型之间的转换
    大公司,还是小公司?
    linux 安装ibuspinyin输入法
    vim windows linux文件格式转换
    editplus正则匹配查找替换
    SQL Server2005中逻辑处理阶段的几个新元素
    记centos6下安装redis2.6过程
    git命令行常用操作及在linux下push到github项目中遇到的问题
    记centos6默认python2.6升级2.7及安装easy_install过程
    多级分类的级联查询sql
  • 原文地址:https://www.cnblogs.com/hanxingli/p/5475625.html
Copyright © 2011-2022 走看看