面向对象程序设计编程实验上机.doc
《面向对象程序设计编程实验上机.doc》由会员分享,可在线阅读,更多相关《面向对象程序设计编程实验上机.doc(10页珍藏版)》请在咨信网上搜索。
面向对象程序设计编程 上机作业题目: (1) 调试构造函数Pen( ) 例题 using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication2 { class Pen { public string Color; private int Price; public Pen() { Color="BLACK"; Price=5; } public void SetPrice(int newPrice) { Price=newPrice;} public int GetPrice() { return Price; } public void SetColor(string newColor) { Color=newColor; } public string GetColor() { return Color; } } class Test { public static void Main() { Pen myPen=new Pen() ; Console.WriteLine("The price is {0}",myPen.GetPrice()); Console.WriteLine("The Color is {0}",myPen.Color); } } } (2) 调试构造函数重载Pen( ) 例题 using System; class Pen { public string Color; private int Price; public Pen() { Color = "BLACK"; Price = 5;} public Pen(string newColor, int newPrice) { Color = newColor; Price = newPrice; } public void SetPrice(int newPrice) { Price = newPrice; } public void SetPrice() { Price = 5; } public int GetPrice() { return Price; } public void SetColor(string newColor) { Color = newColor; } public string GetColor() { return Color; } } class Test { public static void Main() { Pen myPen = new Pen(); Pen hisPen = new Pen("GREEN", 8); Console.WriteLine("The price is {0}", myPen.GetPrice()); Console.WriteLine("The Color is {0}", myPen.Color); Console.WriteLine("The price is {0}", hisPen.GetPrice()); Console.WriteLine("The Color is {0}", hisPen.GetColor()); hisPen.SetPrice(); Console.WriteLine("The price is {0}", hisPen.GetPrice()); } } ( 3) 使用重载方法求5和5.65的平方。 using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication8 { class Program { public class app {public int app1(int x) { return x * x; } public double app1(double y) { return y * y; } } static void Main(string[] args) { app x = new app(); Console.WriteLine("5的平方是{0}", x.app1(5)); Console.WriteLine("5.65的平方是{0}", x.app1(5.65)); } } } ( 4) 将运算符++和- -进行重载, 使之可对字符型数据进行运算, 即: 对一个字符型变量a, 当a=’L’时a++(或++a)的值为’M’, a- -(或- -a)的值为’K’ using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication6 { public class charTest { private char ch; public charTest() { this.ch = ' '; } public charTest(char val) { this.ch = val; } public char c { get { return this.ch; } set { this.ch = value; } } static public charTest operator ++(charTest orig) { charTest Result = new charTest(); Result.ch = (char)(orig.ch + 1); return Result; } static public charTest operator --(charTest orig) { charTest Result = new charTest(); Result.ch = (char)(orig.ch - 1); return Result; } public class overloadApp { public static void Main() { charTest a = new charTest('L'); charTest b = new charTest('L'); Console.WriteLine("Original value is :{0},{1}", a.c, b.c); a = ++a; b = --b; Console.WriteLine("Current value is :{0}.{1}", a.c, b.c); a = ++a; b = --b; Console.WriteLine("Final value is:{0},{1}", a.c, b.c); } } } } ( 5) 编写一个控制台程序, 完成下列功能并输出结果: ①创立一个类Test1, 用无参数的构造函数输出该类的类名; ②增加一个重载的构造函数, 带有一个string类型的参数, 在此构造函数中将传递的字符串打印出来; ③在Main方法中创立属于Test1类的一个对象, 不传递参数; ④在Main方法中创立属于Test1类的另一个对象, 传递一个字符串”This is a string”; using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication8 { class Program { class Test1 { public string test; public Test1() { test = "Test1"; } public Test1(string s) { test = s; } } static void Main(string[] args) { string x = "This is a string"; Test1 app1 = new Test1(); Test1 app2 = new Test1(x); Console.WriteLine("{0}", app1.test); Console.WriteLine("{0}", app2.test); } } } ( 6) 编写一个控制台程序, 完成下列功能并输出结果: ①创立一个类A, 在A中编写一个能够被重写的带int类型参数的方法MyMethod,并在该方法中输出传递的整型值加10后的结果; ②再创立一个类B, 使其继承自类A, 然后重写A中的MyMethod方法,将A中接收的整型值加50, 并输出结果; ③在Main方法中分别创立类A和类B的对象, 并分别调用MyMethod方法; using System; class ClassA { public static int MyMethod(int i) {i=i+10; return i;} } class ClassB:ClassA {public static int MyMethod(int i) {i=i+50;return i;} } class Test { public static void Main() {ClassA a=new ClassA(); ClassB b=new ClassB(); Console.WriteLine("请输入一个数: "); string s=Console.ReadLine(); int x=Int32.Parse(s); Console.WriteLine("调用A类方法: {0}", ClassA.MyMethod(x)); Console.WriteLine("调用B类方法: {0}", ClassB.MyMethod(x)); } } ( 7) 利用委托实现: 当用户输入一个字符’1’时, 调用两个整数相加的方法, 计算两整数之和; 当用户输入一个字符’2’时, 调用两个整数相减的方法, 计算两整数之差。 using System; class App {delegate int process(int a,int b); public static int add(int a,int b) {return a+b;} public static int sub(int a,int b) {return a-b;} static void Main() {string s,s1,s2; process Pro; Console.WriteLine("请输入一个数: "); s1=Console.ReadLine(); int a=Int32.Parse(s1); Console.WriteLine("请输入另一个数: "); s2=Console.ReadLine(); int b=Int32.Parse(s2); Console.WriteLine("请选择运算方法: 为相加, 为相减"); s=Console.ReadLine(); if(s=="1") Pro=new process(add); else Pro=new process(sub); Console.WriteLine("结果为: {0}",Pro(a,b)); } }- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 编程 实验 上机
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文