- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
类成员 1.类是由数据成员(类的常量成员和类的变量成员)和函数成员等组成,它们分别是面向对象理论中类的属性和方法。 2.类的成员又可分为静态与实例的. 用static关键字,则该成员为静态成员; 如没有static关键字,则为实例成员 类成员 静态成员不必产生类的实例便可以访问它,因为编译器将静态成员当做是全局变量或全局方法. 1.静态成员变量。 2.静态成员方法. 实例成员需要产生类的实例,因为要将实例成员存放在对象实例所在内存块. 3.实例成员变量. 4.实例成员方法. 使用类成员 怎样在应用程序中使用我们自已定义的数据成员和方法? 访问或引用实例成员的格式是: 对象名(实例名).实例成员名 访问类的静态变量成员的格式是: 类名.静态成员名 可见,非静态成员属于类的对象而不属于类. 字段和局部变量 字段: 指声明为类一级的对象或值类型的变量。可以理解为常说的全局变量 局部变量: 指在方法、事件以及构造函数内声明的变量。 字段和局部变量 public class Program { public static int j=20; //字段 static void Main() { int j=30; //局部变量 Console.WriteLine(j); //输出结果:30 Console.WriteLine(Program.j); //输出结果:20 Console.ReadLine(); } } 字段和局部变量的引用 当字段和局部变量名相同时: (1)如果要引用局部变量,直接使用局部变量名即可 (2)如果要引用静态字段,可以使用下面的形式 类名.字段名 (3)如果是实例字段,则使用下面的形式: 对象名.字段名 或者在实例方法中用: this.字段名 这里的this指当前实例。 当然,以上情况都是基于在本类中引用,如果怕麻烦就不要让字段和局部变量名相同 静态成员的特点 不管类创建了多少个实例,类中的一个静态变量成员只占据一个存储空间,不同的实例将共享这同一内存,也就是说,静态变量成员和实例是一对多关系. 类的静态方法成员在类中能被各个实例共享,它们不是用来专门针对特定的实例起作用.所以实例用this调用静态方法成员时会出错 实例成员的特点 类中的每一个实例都包含了类的所有实例变量的不同存储空间,即类中的每个实例都包含有类的所有实例成员的独立副本.也就是说类中的实例变量和实例是多对多关系. 类的实例函数成员在类中是被各个实例分享的,用来对特定的实例起作用,所以实例可以用this调用实例函数成员 复习小结 创建对象以某个类为模板,这个类里定义了哪些属性和方法,新建的对象就必然在内存里拥有相应的属性和方法。 可见,相对于简单数据类型,类就是用户自己定义的复杂的抽象数据类型:而相对于简单变量,对象就是复杂的既包括数据又包括方法代码的复杂数据单位。 面向对象编程三大主要特征 封装——隐藏调用者不需要了解的信息。 继承——简化类的设计。 多态——为名称相同的方法提供不同实现方式的能力。 封装(信息隐藏) ??封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类) 封装性是保证软件部件具有优良的模块性的基础。封装的意义在于保护或者防止代码(数据)被我们无意中破坏。 ????? C#中封装的体现 (1)模块信息通过类封装 (2)对象是封装的最基本单位。 (3)类的成员通过字段、属性、方法、事件封装 (4)类成员还可通过访问修饰符来封装 私有的用private 可以继承的用protected 公共成员用public 不要为了方便把什么都定义成public 不要为了方便把什么都定义成static 通过上面的例子,我们可以看到如何通过属性来实现封装。属性具有两种操作get和set。get用来返回属性域的值。set通过value这个变量来给属性域赋值。属性可以设为只读的(read-only)。这时属性只具有一个get操作 在上面的例子中我们看到了如何来实现一个只读的属性。类拥有一个Name属性只实现了get操作。它省略了写操作。 当然属性也可以是只写的(write-only),这只需属性只具有一个set操作 属性小结 封装是朝着面向对象程序设计迈出的第一步。本节课向你展示了一些封装的知识。并重点讲述了属性实现封装。 使用属性的好处在于对象的使用者可以用一条语句
文档评论(0)