zoukankan      html  css  js  c++  java
  • .NET面试题 – 组件开发人员 & XML开发人员

    C#组件开发人员

    1. 什么时候使用override?什么时候使用new? 什么叫shadowing?

      重写父类的方法的时候用override以实现多态,当你想屏蔽父类成员的时候使用new,shadowing基本就是new与override区别等一些方面的问题,个人认为弄清override与new就没有必要特意考虑shadowing。

    2. 解释virtual、sealed、override和abstract的区别?

      virtual是声明虚方法的关键字,说明该方法可以被重写,sealed说明该类不可被继承,override重写基类的方法,abstract表明一个类是抽象类或者一个方法是抽象方法,抽象方法不提供实现,由子类中重写这个抽象方法的方法实现,抽象类不可实例化。

    3. Foo.Bar, Version=2.0.205.0, Culture=neutral, PublicKeyToken=593777ae2d274679d 解释这个字符串每个部分的重要性和作用

      程序集的名字、版本(主版本、次版本、内部版本号、修订号)、Culture(文化)如zh-CN,公钥(缩略码),这些是强名程序集的标志。

    4. 解释public、protected、private和internal的区别。

      标记public后可被在类的内部或外部访问,protected只能被其自身内部或其子类访问,private只能在其内部访问,internal只能在相同的程序集中被访问。

    5. 使用Primary Interop Assembly(PIA)有什么好处?

      PIA是官方发布并经过Sign,可以在不同程序中共享。PIA可能经过某种改动使其比一般Tlbimp生成的Interop DLL要容易使用一些,比如提供一些封装函数。

    6. NUnit是通过什么机制获知需要测试哪些方法的?

      反射,为测试方法加上[TestMethodAttribute]。

    7. catch(Exception e){throw e;}和catch(Exception e){throw;}的区别

      将发生的异常对象抛出,另一个只是抛出异常,并没有抛出原异常对象

    8. typeof(foo)和myFoo.GetType()的区别?

      typeof()为操作符,其操作数为类型,而不能是类的实例。GetType()方法是类型的实例调用的,用于在运行时获得对象的类型。

    9. 1 public class c 
      2 { 
      3     public c(string a) : this() {} 
      4     public c() {} 
      5 } 

      解释第一个构造函数中发生了什么?这个构造函数有什么用?

      解答:第一个构造函数调用了第二个构造函数,这个构造函数构造了一个c对象的实例。其接受一个string类型的参数。

    10. this是干嘛用的?能够用在static方法中?

      this表示通过当前实例访问一个对象,不能用于static中。

    XML开发人员

    1. XML命名空间的作用?

        当XML文档较为复杂或是需要从别的地方取得内容时,一个文档中有可能会需要不止一个词汇,这样就会产生名称相同而含义不同的元素出现在不同词汇中的情况。命名空间可以指明哪个元素属于哪个词汇。它可以为每个词汇指定唯一的前缀进行识别,再将该前缀应用于XML文档中的元素上。

    2. 何时适合使用DOM?何时不适合?有没有尺寸限度?

        等待高手将答案赋予评论中。。致谢!

    3. 什么是WS-I基本配置?它重要在哪里?

        WS-I全称为Web服务互操作性组。WS-I 基本配置文件规范 1.1 版是众多供应商为加快真正可互操作 Web 服务的部署而进行的一次尝试,此规范消除了以前规范中的多义性,明确了创建符合规范的 Web 服务的限定,同时从大量可能的设置中选择了一组 Web 服务设置。(源自MSDN)

    4. 写一个小XML文档,其中使用的是默认的命名空间,以及一个合法的(前缀)命名空间,其中要有分别属于这两个命名空间的元素。     

    1 <?xml version="1.0" encoding="UTF-8"?>
    2 <kml xmlns="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
    3     <Folder>
    4         <name>临时位置</name>
    5     </Folder>
    6     <atom:Document>
    7         <message></message>
    8     </atom:Document>
    9 </kml>

    直接上一段修改过的KML。

    5. 元素和特性的基本区别在哪里?

        元素是xml树型结构的节点,其必须成对出现。属性位于一个元素当中。

    6. 格式完好的XML和有效的XML有什么区别?

        有效的XML文件是指达到一个xml的最低标准,比如标签需匹配等,如果达不到这个标准则不会被识别为xml文件。有效的xml是指经过DTD或者XSD文件验证的。

    7. .NET中如何验证XML?

        这个直接参见微软官方网站的说明。http://support.microsoft.com/kb/307379/zh-cn

    8. myXmlDocument.SelectNodes("//mynode"); 为什么这句代码不好?什么时候它是好的?

        如果单纯选择一个名为mynode的节点,这种做法效率不高。只有当要获取名为mynode的节点的集合时可以使用这个语句。

    9. 拉式解析(XmlReader)与事件读取器(Sax)的区别

        与 XML 的简单 API (SAX) 读取器类似, XmlReader 是一个只进、只读的游标。它提供了对输入的快速和非缓存的流式访问。它可以读取流或文档。它使用户可以提取数据,并跳过对应用程序没有意义的记录。较大的差异在于 SAX 模型是一个"推送"模型,其中分析器将事件推到应用程序,在每次读取新节点时通知应用程序,而使用 XmlReader 的应用程序可以随意从读取器提取节点。(源自MSDN)

    10. XPathDocument和XmlDocument的区别? 在何种情况下应该用哪一个?

        XPathDocument 类使用 XPath 数据模型提供 XML 文档在内存中的快速只读表示形式。XmlDocument 类是实现 W3C 文档对象模型 (DOM) 级别 1 核心和核心 DOM 级别 2 的 XML 文档在内存中的可编辑表示形式。所以区别就在一个只读。

    11. "XML片断"与"XML文档"有什么区别

        首先比较重要的一点,XML文档需要有"<?xml version="1.0" encoding="UTF-8"?>"这样的声明。而XML片段不强制。另外貌似XML可以有多个根节点(而XML文档只能有一个根节点)

    12. 什么叫格式规范的XML?

    类似6题中的解释

    13. XML InfoSet规范与Xml DOM有什么不同? InfoSet是要解决什么问题?

        XML 信息集(XML Information Set, Infoset)允许您将一份 XML 文档描述为一系列具有特定属性的对象。而DOM只表示出一个层次关系。所以InfoSet用来更好的用xml表示对象。

    14. 比较DTD和XSD,它们的相似点与区别分别是什么?哪个更好些?为什么?

    从模式的描述语言来说,XML Schema和XML DTD都属于语法模式。白话一点,就是都用来验证xml的格式。但XML Schema的格式与XML DTD的格式有着非常明显的区别,XML Schema事实上也是XML的一种应用,也就是说XML Schema的格式与XML的格式是完全相同的,而作为SGML DTD的一个子集,XML DTD具有着与XML格式完全不同的格式。所以基于XML格式的XML Schema更具优势。(参考IBM开发者网络http://www.ibm.com/developerworks/cn/xml/x-sd/index.html

    15. System.Xml支持DTD吗?如果支持,如何使用?

        第7个问题中的网址解释了这个问题。

    16. XML Schema能够表示为对象图?对象图能够表示为XML Schema?

        肯定可以。Vs内置此工具。

  • 相关阅读:
    反转链表 16
    CodeForces 701A Cards
    hdu 1087 Super Jumping! Jumping! Jumping!(动态规划)
    hdu 1241 Oil Deposits(水一发,自我的DFS)
    CodeForces 703B(容斥定理)
    poj 1067 取石子游戏(威佐夫博奕(Wythoff Game))
    ACM 马拦过河卒(动态规划)
    hdu 1005 Number Sequence
    51nod 1170 1770 数数字(数学技巧)
    hdu 2160 母猪的故事(睡前随机水一发)(斐波那契数列)
  • 原文地址:https://www.cnblogs.com/lsxqw2004/p/1566663.html
Copyright © 2011-2022 走看看