C#教程—最佳的入门教程.doc

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3月16日 C#语言 第一部分 面向对象 (九) 方法的抽象和类的抽象 练习(二) 我们继续,下面的例子展示了抽象的属性,我们说过,一个对象的属性由一组get/set方法来表现,所以属性也可以作为抽象存在。 下面的例子我们定义了Person类,其EyeColor属性为一个抽象属性,由其子类来具体定义。看代码: 1? using?System; 2? using?System.Collections.Generic; 3? using?System.Linq; 4? using?System.Text; 5? ? 6? namespace?Edu.Study.OO.UseAbstact2?{ 7? ? 8? ????///?<summary> 9? ????///?又见人类 10? ????///?</summary> 11? ????public?abstract?class?Person?{ 12? ????????///?<summary> 13? ????????///?人名字字段 14? ????????///?</summary> 15? ????????private?string?name; 16? ? 17? ????????///?<summary> 18? ????????///?构造器,输入人名 19? ????????///?</summary> 20? ????????public?Person(string?name)?{ 21? ????????????this.Name?=?name; 22? ????????} 23? ? 24? ????????///?<summary> 25? ????????///?人名属性 26? ????????///?</summary> 27? ????????public?string?Name?{ 28? ????????????get?{ 29? ????????????????return?name; 30? ????????????} 31? ????????????set?{ 32? ????????????????name?=?value; 33? ????????????} 34? ????????} 35? ? 36? ????????///?<summary> 37? ????????///?定义一个抽象属性,指明这个属性必须具备get/set访问器,都是抽象的 38? ????????///?这里为了明确,所以为该属性定义了set访问器,其实也不是没有道理,戴个隐形眼镜就可以改变眼睛的颜色了 39? ????????///?当然,也可以只定义某一个访问器,形成抽象只读属性或抽象只写属性 40? ????????///?</summary> 41? ????????public?abstract?string?EyeColor?{ 42? ????????????get; 43? ????????????set; 44? ????????} 45? ????} 46? ? 47? ? 48? ????///?<summary> 49? ????///?定义亚洲人类,继承自人类 50? ????///?</summary> 51? ????public?class?AsiaPerson?:?Person?{ 52? ? 53? ????????///?<summary> 54? ????????///?隐形眼镜颜色字段 55? ????????///?</summary> 56? ????????private?string?lensesColor; 57? ? 58? ????????///?<summary> 59? ????????///?构造器,调用超类构造器 60? ????????///?</summary> 61? ????????public?AsiaPerson(string?name) 62? ????????????:?base(name)?{ 63? ????????} 64? ? 65? ????????///?<summary> 66? ????????///?眼睛颜色属性,实现超类抽象属性 67? ????????///?</summary> 68? ????????public?override?string?EyeColor?{ 69? ????????????get?{ 70? ????????????????//?如果戴隐形眼镜,则返回隐形眼镜的颜色,否则返回黑色 71? ????????????????if?(this.lensesColor?!=?null)?{ 72? ??????????????

文档评论(0)

qwd513620855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档