第3章 面向对象的C#语言.pptVIP

  1. 1、本文档共69页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VS中的类关系图 在项目上,点右键,”查看类关系图“ 添加新项,其他项,类关系图 然后将相应的类文件拖动到该“类关系图”中 UML工具 IBM Rational XDE for .NET Borland Together Microsoft Visio 正向工程,由UML图自动产生代码 反向工程,由代码自动产生UML图 小结 类class、接口interface 结构struct、枚举enum 类的成员:域、方法、属性、索引 修饰词 public protected internal private static const readonly abstract sealed virtual override new OO与UML 练习 参见讲义及ch03目录 进一步阅读 书稿《3 类和接口.doc》 C#语言规范 问题与讨论 dstang2000@263.net 编程提示 数字要有意义,不能天上掉下来 常用手段 使用变量 deltx = 100 使用常量 const int MAX_LEN = 1000 使用系统常量 Math.PI 使用枚举 父类与子类的转换 Person p1 = new Person(); Person p2 = new Student(); Student s1 = new Student(); Student s2 = new Student(); p1 = s1; //可以,因为Person类型的变量可以引用Student对象 s2 = p1; //不行,因为会产生编译错误 s2 = (Student) p1; // 编译时可以通过,运行时则会出现类型不能转换的异常 s2 = (Student) p2; //正确,因为p2引用的正好是Student对象实例 as运算符 如果不能转换,则值为null Student s3 = p1 as Student; //结果s3为null Student s4 = p2 as Student; //s4被赋值 与强制类型转换的差别 as只能针对引用型变量 如果不能转换,as运算不会引起异常,只是值为null is运算符 if( p is Person ) 判断一个对象是不能某个类(及其子类)的实例 typeof()运算符 获得其运行时的类型 Type t = typeof(变量); Type t = typeof(类名); 属性、索引的继承 3.4 修饰符 访问控制符 访问控制符 同类中 相同程序集的子类 相同程序集的非子类 不同程序集的子类 不同程序集的非子类 public Yes Yes Yes Yes Yes protected internal Yes Yes Yes Yes ? protected Yes Yes ? Yes ? internal Yes Yes Yes ? ? private Yes ? ? ? ? static static的域、方法、属性是属于整个类的 static方法中,不能访问实例变量 调用static方法时,直接用类名访问 Console.Write(…); Math.Sqrt(…); Convert.ToDateTime(…); DateTime.Parse String.Copy(a);String.Format(“{0}”,x) static变量可以用来表示“全局变量” 在c#2.0中,类名也可以用static来修饰 StaicAndInstance.cs static构造方法 class Person { static long totalNum; static Person() { totalNum = (long)52e8; Console.WriteLine(人类总人口 + totalNum ); } } Static构造方法只会调用一次,但其调用时间是不确定的。 const及readonly const相当于静态常量 如Math.PI readonly相当于不可改量,只能赋一次值 如String.Empty 在构造方法中赋值,或者在声明时就赋值 注: const 只能用于基本类型及string(如果用于其他类型则无意义,因为只能为null值)。 readonly只能修饰域,而const还可以修饰局部变量 Constans.cs ReadonlyColor.cs sealed及abstract sealed类,不可继承(也有利于编译优化) 如String Console Math Convert

文档评论(0)

1234554321 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档