欢迎来到天天文库
浏览记录
ID:37772457
大小:35.87 KB
页数:3页
时间:2019-05-30
《泛型的小检测》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、三、判断题(每题3分)1、泛型类型可以实现泛型接口,也可以派生自泛型类正确2、泛型类型不可以直接实例化。正确3、可以在非泛型类中用泛型方法.正确五、问答题(每题20分)1、C#中,New有几种用法?分别是什么?2、能把NUll赋予泛型么?为什么?如果要在泛型类里面实例化该泛型,为了防止出错,应该怎么办?3、要给泛型类型定义一个约束必须是引用类型,这个约束怎么写?4、int?a;代表什么意思?5、现有一个泛型类如下:classClass1{int?x=0;publicvoidfff(){inty=x;}}这样写对么?为什么?在不改变成员变量x的前提下,怎么修改inty=x;这句话6、写一
2、个泛型类,用来获取学生的姓名,要求如下:1,该泛型类名称PeopleInformation,有一个约束是继承接口2,该接口是一个人接口叫IPeople,有一个属性,一个是Number(string只读)3,该泛型有一个方法GetPeopleNumber,用来获取Number,参数是传入一个继承于人接口的对象4,有一个学生类Student,继承人接口,有三个属性Number,Name,Age,他有两个构造函数,一个构造函数只初始化name,接收参数也只有name,一个构造函数只用只能初始化Age,一个初始化的学生对象是只包含包含Name和Age,该学生的Number是由Name_age组
3、合的。5,有一个工人类Worker,继承人接口,他有四个属性Number,Name(string),Level(int),Age(int),他的number是由Name_Level_Age组成。现在分别有一个学生(student1,20),一个工人(worker1,3,35),现在要求通过这个泛型类的GetPeopleNumber方法,分别获取学生和工人的Number,请分别完成该泛型类,接口,学生类,工人类,然后输出工人和学生number。泛型类PeopleInformationclassPeopleInformationwhereT:IPeople{publicstringG
4、etPeopleNumber(Tt){returnt.Number;}}接口IPeopleinterfaceIPeople{stringNumber{get;}}学生类StudentclassStudent:IPeople{privatestringnumber;privatestringname;privateintage;publicstringNumber{get{returnname+"_"+age;}set{number=value;}}publicstringName{get;set;}publicintAge{get;set;}publicStudent(stringna
5、me){this.name=name;}publicStudent(intage,stringname):this(name){this.age=age;}}工人类Worker:classWorker:IPeople{stringnumber;stringname;intlevel;intage;publicstringNumber{get{returnthis.number=name+"_"+level+"_"+age;}}publicstringName{get;set;}publicintLevel{get;set;}publicintAge{get;set;}publicWor
6、ker(stringname,intlevel,intage){this.name=name;this.level=level;this.age=age;}}主运行类:classProgram{staticvoidMain(string[]args){Studentstudent1=newStudent(20,"lucy");PeopleInformationsi=newPeopleInformation();stringsn=si.GetPeopleNumber(student1);Console.WriteLine("student1'snumb
7、er:"+sn);Workerworker1=newWorker("mia",3,22);PeopleInformationwi=newPeopleInformation();stringwn=wi.GetPeopleNumber(worker1);Console.WriteLine("worker1'snumber:"+wn);Console.ReadLine();}}最后输出为:student1'snumbe
此文档下载收益归作者所有