全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章 类和结构 Ch3 类和结构 习题解答1编写一个控制台应用程序,完成下列功能。(1)创建一个类,用无参数的构造函数输出该类的类名。(2)增加一个重载的构造函数,带有一个string类型的参数,在此构造函数中将传递的字符串打印出来。(3)在Main方法中创建属于这个类的一个对象,不传递参数。(4)在Main方法中创建属于这个类的另一个对象,传递一个字符串“This is a string.”。(5)在Main方法中声明类型为这个类的一个具有5个对象的数组,但不要实际创建分配到数组里的对象。(6)写出运行程序应该输出的结果。【解答】using System;class Test1 public Test1() Console.WriteLine(this); public Test1(string str) Console.WriteLine(str); public static void Main() Test1 t1 = new Test1(); Test1 t2 = new Test1(This is a string.); Test1 t3 = new Test15; 输出结果:Test1This is a string.2编写一个控制台应用程序,完成下列功能,并回答提出的问题。(1)创建一个类A,在构造函数中输出“A”,再创建一个类B,在构造函数中输出“B”。(2)从A继承一个名为C的新类,并在C内创建一个成员B。不要为C创建构造函数。(3)在Main方法中创建类C的一个对象,写出运行程序后输出的结果。(4)如果在C中也创建一个构造函数输出“C”,整个程序运行的结果又是什么?【解答】using System;public class A public A() Console.WriteLine(A); public class B public B() Console.WriteLine(B); public class C : A B newb = new B();class MainClass public static void Main() C newc = new C(); Console.ReadLine(); 输出结果:BA 如果在C中也创建一个构造函数输出“C”,即添加:public C()Console.WriteLine(C); 则整个程序运行的结果为:BAC3编写一个控制台应用程序,完成下列功能,并写出运行程序后输出的结果。(1)创建一个类A,在A中编写一个可以被重写的带int类型参数的方法MyMethod,并在该方法中输出传递的整型值加10后的结果。(2)再创建一个类B,使其继承自类A,然后重写A中的MyMethod方法,将A中接收的整型值加50,并输出结果。(3)在Main方法中分别创建类A和类B的对象,并分别调用MyMethod方法。【解答】 using System;public class A public virtual void MyMethod(int num) num += 10; Console.WriteLine(num); public class B : A public override void MyMethod(int num) num += 50; Console.WriteLine(num); class MainClass public static void Main() A newa = new A(); newa.MyMethod(2); B newb = new B(); newb.MyMethod(2); Console.ReadLine(); 输出结果:12524编写一个控制台应用程序,定义一个类MyClass,类中包含有public、private以及protected数据成员及方法。然后定义一个从MyClass类继承的类MyMain,将Main方法放在MyMain中,在Main方法中创建MyClass类的一个对象,并分别访问类中的数据成员及方法。要求注明在试图访问所有类成员时哪些语句会产生编译错误。【解答】using System;class MyClass public int i; private int j; protected int k; public void method1() Console.WriteLine(public method.); private void method2() Console.WriteLine(private method.); protected void method3() Console.WriteLine(protected method.); class MyMain : MyClass public static void Main() MyClass t = new MyClass(); Console.WriteLine(i=0, t.i); Console.WriteLine(j=0, t.j);/会出现编译错误,私有成员不允许在其它类中访问 Console.WriteLine(k=0, t.k);/会出现编译错误,应该创建MyMain的对象,然 /后通过MyMain的对象访问 t.method1(); t.method2(); /会出现编译错误,私有的方法不允许在其它类中调用 t.method3(); /会出现编译错误,应该创建MyMain的对象,然后通过MyMain的 /对象调用该方法 5创建一个类包含有protected数据。在相同的文件里创建第二个类,用一个方法操纵第一个类里的protected数据。【解答】using System;class Class1 protected int i = 5; protected void MyMethod() Console.WriteLine(protected method.); class Class2 : Class1 private void NewMethod() Co
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 转租铺面合同协议书
- 书类包销合同范本
- 酒水经销商协议合同
- 卖杉树写合同范本
- 卫生用品合同范本
- 厦门公房合同范本
- 药品购销合同范本
- 主体水电合同范本
- 合伙机械合同范本
- 蔬菜送货合同范本
- 《04S519小型排水构筑物(含隔油池)图集》
- 报案书(参考范文)
- 《民族图形设计》课件
- 非新生儿破伤风诊疗规范(2024年版)解读
- GB/T 44971-2024土壤硒含量等级
- 知识创业思维与方法(湖南师范大学)知到智慧树章节答案
- 汽车行业销售经理聘用合同
- 2024屋顶分布式光伏场站设备运维规程
- (高清版)JT∕T 1402-2022 交通运输行政执法基础装备配备及技术要求
- 哪些荣誉奖项不可以作为评审因素
- 土地综合整治 投标方案(技术方案)
评论
0/150
提交评论