




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C#面向?qū)ο缶幊?多態(tài) 1C#中的方法重寫使用關(guān)鍵字()。 a) override b) overload c) static d) inherit 2以下的C#代碼,試圖用來定義一個(gè)接口: public interface IFile int A; int delFile() A = 3; void disFile(); 關(guān)于以上的代碼,以下描述錯(cuò)誤的是()。(選擇一項(xiàng)) a) 以上的代碼中存在的錯(cuò)誤包括:不能在接口中定義變量,所以int A代碼行將出現(xiàn)錯(cuò)誤 b) 以上的代碼中存在的錯(cuò)誤包括:接口方法delFile是不允許實(shí)現(xiàn)的,所以不能編寫具體的實(shí)現(xiàn)函數(shù) c) 代碼void disFile
2、();定義無錯(cuò)誤,接口可以沒有返回值 d) 代碼void disFile();應(yīng)該編寫為void disFile(); 3在C#中,接口與抽象基類的區(qū)別在于()。 a) 抽象基類可以包含非抽象方法,而接口只能包含抽象方法 b) 抽象基類可以被實(shí)例化,而接口不能被實(shí)例化 c) 抽象基類不能被實(shí)例化,而接口可以被實(shí)例化 d) 抽象基類就是接口,它們之間無差別 4在開發(fā)某圖書館的圖書信息管理系統(tǒng)的過程中,開始為教材類圖書建立一個(gè)TextBook類;現(xiàn)在又增加了雜志類圖書,于是需要改變?cè)O(shè)計(jì),則下面最好的設(shè)計(jì)應(yīng)該是()。 a) 建立一個(gè)新的雜志類Journal。 b) 建立一個(gè)新的雜志類Journal,
3、并繼承TextBoook類。 c) 建立一個(gè)基類Book和一個(gè)新的雜志類Journal,并讓Journal類和TextBoook類都繼承于Book類。 d) 不建立任何類,把雜志圖書的某些特殊屬性加到TextBoook類中。 5可以使用()關(guān)鍵字重寫方法。 a) Override b) New 6()可以看作類的模具。 抽象類 A.B. 接口 C. 虛方法 7以下敘述正確的是:() A接口中可以有虛方法。 B.一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。 C接口不能被實(shí)例化。 D.接口中可以包含已實(shí)現(xiàn)的方法。 8.下列代碼輸出為( ): class Father public void F() Console.W
4、riteLine(A.F); public virtual void G() Console.WriteLine(A.G); class Son: Father new public void F() Console.WriteLine(B.F); public override void G() Console.WriteLine(B.G); class override_new static void Main() Son b = new Son(); Father a = b; a.F(); b.F(); a.G(); b.G(); A. A.F B.F A.G B.G B. A.F B
5、.F B.G B.G C. A.F A.F B.G B.G D. B.F B.F B.G B.G 9寫出程序的輸出結(jié)果: public class A public virtual void Fun1(int i) Console.WriteLine(i); public void Fun2(A a) a.Fun1(1); Fun1(5); public class B:A public override void Fun1(int i) base.Fun1(i+1); public static void Main() B b=new B(); A a=new A(); a.Fun2(b);
6、 b.Fun2(a); 10在C中,允許多接口繼承,從多個(gè)接口時(shí),使用“:”后跟繼承的接口的名字,多個(gè)接口名稱之間使用()符號(hào)進(jìn)行分割。(選擇一項(xiàng)) a)”. b)”-” c)”,” d)”:” 11在.NET中,關(guān)于組件多態(tài)性的陳述,下面除了( )都是正確的。(選擇一項(xiàng)) a可以通過接口實(shí)現(xiàn)多態(tài)性 b可以通過抽象類實(shí)現(xiàn)多態(tài)性 c多態(tài)性不只是重載或重寫,而是智能重寫 d在多態(tài)性中,需要調(diào)用哪個(gè)方法的決定是在設(shè)計(jì)時(shí)做出的 12多態(tài)性允許對(duì)類的某個(gè)方法進(jìn)行調(diào)用而無需考慮該方法所提供的特定實(shí)現(xiàn),例如,可能有名為了Road的類,它調(diào)用另一個(gè)類的Drive方法,另一個(gè)類可能是SportsCar 或Sma
7、llCar, 但二者都提供Drive方法,雖然Drive 方法的實(shí)現(xiàn)因類的不同而異,但Road 類仍可以調(diào)用它,并且它提供的結(jié)果可由Road 類使用和解釋。在 .NET 中,可以由以下的方式來實(shí)現(xiàn)組件中多態(tài)性,除了()。(選擇一項(xiàng)) a) 通過接口實(shí)現(xiàn)多態(tài)性 b) 通過多個(gè)不同的子類從單個(gè)基類繼承實(shí)現(xiàn)多態(tài) c) 通過抽象類實(shí)現(xiàn)多態(tài)性 d) 通過受保護(hù)的成員函數(shù)來實(shí)現(xiàn)多態(tài)性 13閱讀以下的C#代碼: class A public abstract void printStr(string str) Console.WriteLine(str); class B:A public override
8、 void printStr(string str) str=str+(重寫的方法); Console.WriteLine(str); class DefaultInitializerApp public static void Main() B b=new B(); A a=b; ?牰湩卻牴尨打印); ?牰湩卻牴尨打印); Console.ReadLine(); 運(yùn)行程序后將在控制臺(tái)窗口打印( )。(選擇一項(xiàng)) a. 打印 重寫的方法 b. 打印 打印 重寫的方法 c. 打印 d. 程序有誤,不能運(yùn)行 14在C#的語法中,()關(guān)鍵字可以實(shí)現(xiàn)在派生類中對(duì)基類的虛函數(shù)進(jìn)行重載(選一項(xiàng)) a ov
9、erride b new c static d virtual 15對(duì)下面的C # 程序: using System; public interface IAccount void PosInterest(); void DeductFees(int feeSchedule); class BusinessAccount : IAccount int A; public static void Main() BusinessAccount B = new BusinessAccount(); Console.WriteLine(B.A); Console.ReadLine(); public
10、void IAccount.PostInterest() A = A+1; public void IAccount.DeductFees(int feeSchedule) A = A + feeSchedule; 以下的說法正確的是 ( ) (選擇一項(xiàng)) a) 程序?qū)⒊霈F(xiàn)編譯錯(cuò)誤,指示不能在實(shí)現(xiàn)接口BusinessAccount的類中定義成員 A. b) 程序?qū)⒊霈F(xiàn)編譯錯(cuò)誤,指示Public關(guān)鍵字對(duì)接口項(xiàng)無效 c) 程序編譯正常,但是出現(xiàn)運(yùn)行時(shí)錯(cuò)誤,指示變量A沒有初始化 d) 程序?qū)⒄_\(yùn)行,輸出為0 16.可以使用()關(guān)鍵字重寫方法。 A. Override B. new 17.()可以看
11、作類的模具。 A. 抽象類 B. 接口 C. 虛方法 18.請(qǐng)問,此程序輸出結(jié)果是() abstract class BaseClass public virtual void MethodA()Console.WriteLine(BaseClass); public virtual void MethodB() class Class1: BaseClass public void MethodA()Console.WriteLine(Class1); public override void MethodB() class Class2: Class1 new public void Me
12、thodB() class MainClass public static void Main(string args)Class2 o = new Class2();o.MethodA(); A. BaseClass B. BassClass Class1 C. Class1 D. Class1 BassClass 19.請(qǐng)問,此程序輸出結(jié)果是() public abstract class A public A() Console.WriteLine(A); public virtual void Fun() Console.WriteLine(A.Fun(); public class
13、B: A public B() Console.WriteLine(B); public new void Fun() Console.WriteLine(B.Fun(); public static void Main() A a = new B();a.Fun(); A. A B A.Fun() B. A B B.Fun() C. B A A.Fun() D. B A B.Fun() 20.以下敘述正確的是(): A. 接口中可以有虛方法。 B. 一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。 C. 接口不能被實(shí)例化。 D. 接口中可以包含已實(shí)現(xiàn)的方法。 21以下關(guān)于C#代碼的說法正確的是()。(選擇一項(xiàng)) P
14、ublic abstract Animal Public abstract void Eat(); Public void Sleep() a. 該段代碼正確 b. 代碼錯(cuò)誤,因?yàn)轭愔写嬖诜浅橄蠓椒?c. 代碼錯(cuò)誤,因?yàn)轭愔械姆椒]有實(shí)現(xiàn) d. 通過代碼“Animal an = new Animal();”可以創(chuàng)建一個(gè)Animal對(duì)象 22.在c#中,關(guān)于繼承和接口,以下說法正確的是() (單選) a. c#允許許多接口實(shí)現(xiàn),也允許多重繼承 b.c#允許多接口實(shí)現(xiàn),但不允許多重繼承 c.c#不允許多接口實(shí)現(xiàn),但允許多重繼承 d.c#不允許多重接口實(shí)現(xiàn),也不允許多重繼承 23) 在C#中,已知下
15、列代碼的運(yùn)行結(jié)果是“老虎吃動(dòng)物”,請(qǐng)問在空白處1和空白處2 () 分別應(yīng)該填寫的代碼是 Public class Animal Public 空白處1 void Eat() Consone.WriteLine(“我要吃”); Public class Tiger:Animal Public 空白處2 void Eat() Consone.WriteLine(“老虎吃動(dòng)物”); Public calssTest Static void Main() Animal an = new Tiger(); an.Eat; a) Virtual , new b) override , virtual c)
16、 virtual , override d) new , virtual 24) 在C#中,下列關(guān)于抽象類和接口的說法,正確的是)()(選擇一項(xiàng)) a) 在抽象類中,所以的方法都是抽象方法 b) 繼承自抽象類的子類必須實(shí)現(xiàn)起父類(抽象類)中的所以抽象方法 c) 在接口中,可以有方法實(shí)現(xiàn),在抽象類中不能有方法實(shí)現(xiàn) d) 一個(gè)類可以從多個(gè)接口繼承,也可以從多個(gè)抽象類繼承 25) 關(guān)于以下C#代碼的說法正確的是() Public abstract class Animal Public abstract void Eat(); Public class Tiger:Animal Public ove
17、rride void Eat() Console.WriteLine(“老虎吃動(dòng)物”); Public class Tigress:Tiger Static void main() Tigress tiger=new Tigress(); Tiger.Eat(); a) 代碼正確,但沒有輸出 代碼正確,b) 并且輸出為”老虎吃動(dòng)物”; 代碼錯(cuò)誤,因?yàn)閏) Tigress類沒有實(shí)現(xiàn)抽象基類Animal中的抽象方法 代碼錯(cuò)誤,因?yàn)槌橄蠡怉nimal的 d)Eat方法沒有實(shí)現(xiàn) 26) 在c#中 某程序員定義了一個(gè)IDataBase接口,以及實(shí)現(xiàn)該接口的類CDataBase ,下列關(guān)于該段代碼說法正
18、確的是()(選擇一項(xiàng)) public interface IDataBase void OpenTable( string tableName); tableName); string UpDataTable( void CDataBase:IDataBase classpublic tableName) public OpenTable( voidstring ); 打開數(shù)據(jù)表潃獮汯?牗瑩?湩? tableName) string UpdataTable(void public ); 更新數(shù)據(jù)表潃獮汯?牗瑩?湩? Main() static void CDataBase(); CDataBa
19、se db = new db.OpenTable(Customers); a)該段代碼錯(cuò)誤,因?yàn)樵诙x接口時(shí),接口中的方法沒有提供實(shí)現(xiàn) 該段代碼錯(cuò)誤,因?yàn)榻涌谥新暶鞯姆椒ú皇枪械模瑧?yīng)此在b)CDataBase類中不能訪問接口中的方法去掉,方法,UpdataTable該段代碼正確,c)同時(shí)由于客戶沒有調(diào)用類中的可以把CDataTableUpdataTable 代碼仍然正確則必須在void Execute(string sql); 接口中聲明一個(gè)方法該段代碼正確,但是如果在d)IDataBase CDataBase中實(shí)現(xiàn)該方法 下列代碼運(yùn)行結(jié)果是()(選擇一項(xiàng)) 中27.C#public cla
20、ss Student public virtual void Exam() 潃獮汯?牗瑩?湩?學(xué)生都要考試); Undergraduate:Student public class Exam() void publicnew .Exam(); base ); 潃獮汯?牗瑩?湩?大學(xué)生有選擇考試科目的權(quán)利 Test classpublic void Main() static Undergraduate(); Student stu = new stu.Exam(); 學(xué)生都要考試a) b)大學(xué)生有選擇考試科目的權(quán)利 c)大學(xué)生都要考試 大學(xué)生有選擇考試科目的權(quán)利 學(xué)生都要考試d) 學(xué)生都要考試
21、 28)c#中 下列代碼的運(yùn)行結(jié)果是()(選擇一項(xiàng)) struct Student public int age; public string name; public Student(int age,string name) this.age=age; .name=name; this Test classpublic Mian() staticvoid); Student stu1= new匠疇敤瑮?小方 ); 匠疇敤瑮?小剛new Student stu2= stu2=stu1; stu1.age=30; ; 小燕瑳?渮浡?Console.WriteLine(stu2.age); Con
22、sole.WriteLine(); a)18 小方 b)18 小燕 c)30 小燕 d)30 小方 29)在C#中,下列()關(guān)鍵字用于重寫基類的虛擬方法。(選擇一項(xiàng)) a)override b)new c)base d)virtual 委托和事件 C#面向?qū)ο缶幊?委托和事件 1閱讀以下C#代碼 Namespace tevent public delegate void notify5(); class eventTest public void Raise5(int I) if(I%3=1) Got5(); public event notify5 Got5; class H
23、andlers public static void Method1() ?湯潳敬圮楲整楌敮尨時(shí)間處理完成); class class10 static void Main(String args) eventTest eObj=new eventTest(); eObj.Got5+=new notify5(Handlers.Method1); for(int cnt=0;cnt As b = c = d Instead 12C#語言使用()來引入名稱空間。 a) Import b) Using c) Include d) Lib 13.()關(guān)鍵字是類型和類型成員的訪問修飾符。(D)內(nèi)部成員只
24、有在同一程序集中的文件內(nèi)才是可訪問的。 A. public B.private C.protected D.internal E.sealed 14.下列哪些說法是錯(cuò)誤的() A. 抽象類可以實(shí)例化。 B. 不可以改變常量的值. C. 可以使用 this 引用靜態(tài)方法或?qū)傩栽L問器. D. readonly 變量只能在構(gòu)造函數(shù)中賦值. E. 一個(gè)父類的private 成員可以在子類中直接調(diào)用. 15.請(qǐng)問,Class1.Count的值是多少?() class Class1public static int Count = 0; static Class1()Count+; public Clas
25、s1()Count+; public static void Main() Class1 o1 = new Class1();/1 Class1 o2 = new Class1();/5 Console.WriteLine(Class1.Count); A. 1 B. 2 C. 3 D. 4 16.下面的代碼實(shí)現(xiàn)了設(shè)計(jì)模式中的()模式 public class A private A instance; private A() public static A Instance get if ( A = null ) A = new A(); return instance; A. Factory B. Abstract Factory C. Singleton D. Builder 17.下面的代碼實(shí)現(xiàn)了設(shè)計(jì)模式中的()模式 public seale
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 氫能制備新方法-洞察及研究
- 多模態(tài)情感識(shí)別技術(shù):表情、語音與語言的綜合應(yīng)用綜述
- 基于雙層路徑規(guī)劃的智能導(dǎo)盲系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 檢查督導(dǎo)整改管理辦法
- 藝術(shù)生產(chǎn)理論在當(dāng)代文藝創(chuàng)作中的實(shí)踐啟示研究
- 出具收入證明管理辦法
- 辦公樓保潔技術(shù)方案的研究與實(shí)踐
- 美學(xué)自學(xué)考試筆記重點(diǎn)解讀
- 游覽車運(yùn)營調(diào)度方案設(shè)計(jì)
- 導(dǎo)電材料對(duì)厭氧消化性能的影響及其機(jī)制研究進(jìn)展
- 新華書店讀者問卷調(diào)查表
- GB/T 20946-2007起重用短環(huán)鏈驗(yàn)收總則
- GB/T 18391.3-2009信息技術(shù)元數(shù)據(jù)注冊(cè)系統(tǒng)(MDR)第3部分:注冊(cè)系統(tǒng)元模型與基本屬性
- GB/T 10610-2009產(chǎn)品幾何技術(shù)規(guī)范(GPS)表面結(jié)構(gòu)輪廓法評(píng)定表面結(jié)構(gòu)的規(guī)則和方法
- 熠搜家庭戶用光伏電站推介
- 濟(jì)源幼兒園等級(jí)及管理辦法
- 房地產(chǎn)開發(fā)全流程培訓(xùn)講義課件
- DB44-T 2163-2019山地自行車賽場(chǎng)服務(wù) 基本要求-(高清現(xiàn)行)
- 云南省特種設(shè)備檢驗(yàn)檢測(cè)收費(fèi)標(biāo)準(zhǔn)
- DB15T 933-2015 內(nèi)蒙古地區(qū)極端高溫、低溫和降雨標(biāo)準(zhǔn)
- 工傷責(zé)任保險(xiǎn)單
評(píng)論
0/150
提交評(píng)論