



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 30856-2025LED外延芯片用砷化镓衬底
- GB/T 45905.3-2025电力现货市场运营第3部分:省间技术支持系统
- 森林防火知识培训讲话稿课件
- 鼻饲护理试题及答案
- 2025年IT企业面试笔试全真模拟题库
- 2025年注册验船师资格考试(A级船舶检验专业案例分析)复习题及答案二
- 2025年云计算开发工程师面试宝典与模拟题集
- 2025年汽车制造商招聘生产线工人模拟题及面试指南
- 2025年房地产行业营销策划岗位招聘笔试模拟题
- 2026届上海南洋模范化学高三上期末学业质量监测试题含解析
- SH/T 0358-199510号航空液压油
- 劳动保障监察业务知识
- 新入辅导员职员工培训
- 保安公司安全生产培训课件
- 普通话声母资料
- 《测量降水量》教学课件
- 生态学基本原理解析课件
- 煤灰清理施工方案
- 《大学生军事理论教程》第三章
- 黄遵宪年谱长编(上下册):国家社科基金后期资助项目
- 均值X-R极差分析控制图(自动测算表)
评论
0/150
提交评论