資源描述:
《南京-諾思信.net答案》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、諾思信科技(南京)有限公司.NET筆試題答案一、C#基礎(chǔ)題1、傳入某個(gè)屬性的SET方法的隱含參數(shù)的名稱(chēng)是什么?value,它的類(lèi)型和屬性所聲明的類(lèi)型相同。2、C#支持多重繼承嗎?不支持??梢杂媒涌趤?lái)實(shí)現(xiàn)。3、C#用多種修飾符來(lái)表達(dá)類(lèi)的不同性質(zhì)。根據(jù)其保護(hù)級(jí)C#的類(lèi)有五種不同的限制修飾符,請(qǐng)寫(xiě)出并指出它們之間的區(qū)別是什么?public可以被任意存取protected只可以被本類(lèi)和其繼承子類(lèi)存取internal只可以被本組合體(Assembly)內(nèi)所有的類(lèi)存取,組合體是C#語(yǔ)言中類(lèi)被組合后的邏輯單位和物理單位,其編譯后的文件擴(kuò)展名往往是“.D
2、LL”或“.EXE”。protectedinternal唯一的一種組合限制修飾符,它只可以被本組合體內(nèi)所有的類(lèi)和這些類(lèi)的繼承子類(lèi)所存取。private只可以被本類(lèi)所存取。4、C#提供一個(gè)默認(rèn)的無(wú)參構(gòu)造函數(shù),當(dāng)我實(shí)現(xiàn)了另外一個(gè)有一個(gè)參數(shù)的構(gòu)造函數(shù)時(shí),還想保留這個(gè)無(wú)參數(shù)的構(gòu)造函數(shù)。這樣我應(yīng)該寫(xiě)幾個(gè)構(gòu)造函數(shù)??jī)蓚€(gè),一旦你實(shí)現(xiàn)了一個(gè)構(gòu)造函數(shù),C#就不會(huì)再提供默認(rèn)的構(gòu)造函數(shù)了,所以需要手動(dòng)實(shí)現(xiàn)那個(gè)無(wú)參構(gòu)造函數(shù)。5、重載和覆寫(xiě)有什么區(qū)別?重載提供了對(duì)一個(gè)方法簽名的不同參數(shù)調(diào)用的實(shí)現(xiàn)。覆寫(xiě)提供了子類(lèi)中改變父類(lèi)方法行為的實(shí)現(xiàn)。6、在方法定義中,virtu
3、al有什么含義?被virtual修飾的方法可以被子類(lèi)覆寫(xiě)7、能夠?qū)⒎庆o態(tài)的方法覆寫(xiě)成靜態(tài)方法嗎?不能,覆寫(xiě)方法的簽名必須與被覆寫(xiě)方法的簽名保持一致,除了將virtual改為override。8、可以覆寫(xiě)私有的虛方法嗎?不可以,甚至子類(lèi)中無(wú)法訪(fǎng)問(wèn)父類(lèi)中的私有方法9、能夠阻止某一個(gè)類(lèi)被其他類(lèi)繼承嗎?可以,使用關(guān)鍵字sealed10、能夠?qū)崿F(xiàn)允許某個(gè)類(lèi)別繼承,但不允許其中的某個(gè)方法被覆寫(xiě)嗎?可以,標(biāo)記這個(gè)類(lèi)為public,并標(biāo)記這個(gè)方法為sealed。11、什么是抽象類(lèi)(abstractclass)?一種不可以被實(shí)例化的類(lèi)。抽象類(lèi)中一般含有抽象
4、方法,當(dāng)然也可有具體實(shí)現(xiàn)。繼承類(lèi)只有實(shí)現(xiàn)過(guò)所有抽象類(lèi)的抽象方法后才能被實(shí)例化。12、接口(interface)是什么?只含有公有抽象方法(publicabstractmethod)的類(lèi)。這些方法必須在子類(lèi)中被實(shí)現(xiàn)。13、為什么不能指定接口中方法的修飾符?接口中的方法用來(lái)定義對(duì)象之間通信的契約,指定接口中的方法為私有或保護(hù)沒(méi)有意義。它們默認(rèn)為公有方法。14、接口和抽象類(lèi)的區(qū)別是什么?接口中所有方法必須是抽象的,并且不能指定方法的訪(fǎng)問(wèn)修飾符。抽象類(lèi)中可以有方法的實(shí)現(xiàn),也可以指定方法的訪(fǎng)問(wèn)修飾符。15、如何區(qū)別重載方法?不同的參數(shù)類(lèi)型,不同的參
5、數(shù)個(gè)數(shù),不同的參數(shù)順序16、解釋一下ajax及實(shí)現(xiàn)原理17、列出常用的使用javascript操作xml的類(lèi)包二、程序題1、請(qǐng)問(wèn),Class1.Count的值是多少?(3)classClass1{publicstaticintCount=0;staticClass1(){Count++;}publicClass1(){Count++;}}Class1o1=newClass1();Class1o2=newClass1();Console.Write(“Class1.Count的值是”+Count)2、請(qǐng)問(wèn),此程序輸出的結(jié)果是:Class1a
6、bstractclassBaseClass{publicvirtualvoidMethodA(){Console.WriteLine("BaseClass");}publicvirtualvoidMethodB(){}}classClass1:BaseClass{publicvoidMethodA(){Console.WriteLine("Class1");}publicoverridevoidMethodB(){}}classClass2:Class1{newpublicvoidMethodB(){}}classMainClass{pu
7、blicstaticvoidMain(string[]args){Class2o=newClass2();o.MethodA();}}3、請(qǐng)用你最熟悉的語(yǔ)言編寫(xiě)一個(gè)排序的函數(shù)(方法)略三、思維題1.某一密碼僅使用K、L、M、N、O共5個(gè)字母,密碼中的單詞從左向右排列,密碼單詞必須遵循如下規(guī)則:(1)密碼單詞的最小長(zhǎng)度是兩個(gè)字母,可以相同,也可以不同(2)K不可能是單詞的第一個(gè)字母(3)如果L出現(xiàn),則出現(xiàn)次數(shù)不止一次(4)M不能使最后一個(gè)也不能是倒數(shù)第二個(gè)字母(5)K出現(xiàn),則N就一定出現(xiàn)(6)O如果是最后一個(gè)字母,則L一定出現(xiàn)問(wèn)題一:下列哪
8、一個(gè)字母可以放在LO中的O后面,形成一個(gè)3個(gè)字母的密碼單詞?BA)KB)LC)MD)N問(wèn)題二:如果能得到的字母是K、L、M,那么能夠形成的兩個(gè)字母長(zhǎng)的密碼單詞的總數(shù)是多少?AA)1個(gè)B)3個(gè)C