- 1、本文档共47页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Head_First_C_中文版_第六章
有时你真的想要像你的父母。
曾经遇到过可以做你想要它做的事情的对象吗?曾经希望过你只要只要修改一点东西对象就变得完美了吗?这就是C#语言中继承如此重要的原因。读了这一章,你将学会如何通过继承一个对象来获得它的行为,同时还保持修改它的行为的灵活性。你将不用再复制代码,可以更好的模拟现实世界,最后写出容易维护的代码。
凯瑟琳也承接生日聚会
你的程序已经可以工作了,凯瑟琳总是在用它。但是她不只是承晚宴聚会--她现在也做生日聚会,而且计费方式与晚宴聚会有所不同。她需要你给程序添加生日聚会的功能。
我们需要一个BirthDayParty类
修改你的程序来计算生日聚会的花费就意味着要添加一个类并改变窗体来同时掌管两种类型的聚会。
一、 创建一个新的BirthDayParty类
这个类要计算花费,处理装饰,并检查蛋糕上的字体的大小。
二、 添加一个TabControl控件到窗体上。
窗体上的每一个tab就像第三章上显示Joe和Bob有多少现金的GroupBox控件。点击你想要显示的tab,并向其中拖拽控件。
三、 把晚宴聚会需要的控件拖拽到第一个tab上去
要把每一个处理晚宴聚会的空间都拖拽到上面去。它们将会像原来一样的工作,但是它们只有在晚宴聚会的tab被选中时才显示出来。
四、 向第二个tab上添加新的生日聚会的控件
你需要像设计晚宴聚会的界面一样的来设计生日聚会的界面。
五、 根据控件来写生日聚会的类
现在只需要在窗体的字段里面添加一个BirthDayParty的引用,并向新的控件添加代码以使得它们可以使用类的方法和属性。
问:为什么不可以像Mike想要在导航器中比较三条道路时一样,直接创建一个DinnerParty的新实例呢?
答:因为如果你创建了DinnerParty的另一个新实例,它只能用来计划另一个晚宴聚会。两个同类的实例只有在你需要处理同类的两份数据的时候才会显得有用。但是如果你需要存储不同的数据,那你就需要不同的类来完成。
问:我怎么知道该往新类里面写些什么呢?
答:开始构建爱一个类之前,需要先知道它是用来解决什么问题的。因此你必须和凯瑟琳谈谈—是她要使用这个程序。还好你记了不少笔记!你可以通过考虑类的行为(类需要做什么)和状态(类需要知悉什么)来想出类的方法,字段,和属性。
四.构建生日聚会的界面
生日聚会的GUI含有一个NumbericUpDown控件来代表人数,含有一个CheckBox控件来代表高级装饰,一个有着3D边界的标签来显示总花费。然后还有一个TextBox控件来显示蛋糕上要写的字。
五.你将需要这个属性
这是BirthDayParty.CakeWriting属性的代码--它会派上用场的:
六.把它们组合起来
所有的部分都写好了,现在只需要写一些代码来让控件工作。
*添加一个BirthDayParty对象到窗体。确保你实例化了它。
*编写NumbericUpDown控件的事件处理方法,该方法用来设置NumberOfPeople属性。
*让高级装饰的CheckBox可以工作
*添加一个DisplayBirthDayPartyCost()方法,并在所有的事件处理方法中调用它,这样显示花费的标签将会在任何变化发生的时候得以更新。
七.运行
确保程序以它被预期的方式运行。检查一下文字过长的时候是不是会弹出错误提示框。确保价钱总是正确的。上面这些做好了,你的工作就搞定了!
向凯瑟琳的聚会计划程序添加生日聚会
给凯瑟琳的聚会计划程序添加生日聚会
括号对于单行的代码块来说是可选的
很多时候你的if语句或者while循环下面的代码块中都会只有一句语句。如果有很多这样的if和while,也就会有很多的括号--它看起来很不顺眼!C#允许你在代码块中只有一句语句的情况下省略掉括号,这样就解决了问题。所以下面的代码绝对符合语法:
另一件事儿...你可以给超过12人的聚会额外收费$100吗?
用了你的程序,凯瑟琳接到了很多的用户,她可以跟某些大客户多收一点费用了。那,要怎么做才能让你的程序有多收费一点的功能呢?
*修改DinnerParty.CalculateCost()方法来让它检查NumberOfPeople,如果人数多于12,就给返回值加上$100。
*用同样的方式修改BirthDayParty.CalculateCost()方法。
想一下怎么能够一下子就让DinnerParty和BirthDayParty同时具有多收费的功能呢。要写设么代码?写在哪儿呢?
这个问题很简单...但是如果有三个类似的类呢?四个呢?十多个呢?如果你还要维护这些类,有可能要做更多的更改呢?如果要对五
您可能关注的文档
- CA6140車床拨叉831008机械加工工艺规程及工艺装备设计.doc
- c++面向對象复习题答案.docx
- cad使用常見问题整理.doc
- c++對象成员函数返回自身引用.doc
- CA6140普通車床数控化改造.doc
- CA6140車床数控改造.doc
- cad不是經典我不记.doc
- CA620機床数控化改造设计.doc
- CAD捕捉,CAD中的捕捉和對象捕捉有什么区别?.docx
- CAD練习图(复杂篇).doc
- 【东吴证券-2025研报】智能点胶设备受益智能穿戴行业,并购优质公司拓宽科技赛道.pdf
- 【山西证券-2025研报】国防军工2025年中期策略:国际局势动荡加剧,我国军贸大有可为.pdf
- 【港交所-2025研报】KFM金德 年报2025.pdf
- 【开源证券-2025研报】北交所行业主题报告:北交所乳业:活牛价格反弹先行,原奶周期拐点在即,产业链公司或迎改善.pdf
- 【国证国际-2025研报】连连数字(02598):2B数字支付服务商,看好份额提升前景.pdf
- 【港交所-2025研报】亚洲实业集团 2025年报.pdf
- 【天风证券-2025研报】2025电子中期策略:等待创新和周期共振.pdf
- 【拉丁美洲经济委员会-2025研报】拉丁美洲经济委员会-预期性治理和立法远见:拉丁美洲和加勒比的当务之急(英).pdf
- 【开源证券-2025研报】中孚实业(600595):公司首次覆盖报告:成本优化+电解铝权益产能提升,公司盈利弹性可期.pdf
- 【港交所-2025研报】胜龙国际 2024-25 年报.pdf
文档评论(0)