使用C#进行面向对象编程第六章类和对象.ppt_第1页
使用C#进行面向对象编程第六章类和对象.ppt_第2页
使用C#进行面向对象编程第六章类和对象.ppt_第3页
使用C#进行面向对象编程第六章类和对象.ppt_第4页
使用C#进行面向对象编程第六章类和对象.ppt_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,第六章 类和对象,2,本章内容,面向对象的基本概念 类的声明 对象的产生和使用 对象的生命周期 类的可访问性 类的成员的可访问性 分部类,3,6.1 面向对象的基本概念,什么是面向对象 类和对象的基本概念 面向对象的三大特征,4,面向对象的编程思想意图使在计算机中对事物的描述与现实中该事物的本来面目尽可能的一致。 类和对象(面向对象方法的核心概念) 类是对某一类事物的描述,是抽象的,概念上的定义; 对象是实际存在的该类事物的一个个体,也称为实例(instance)。,5,对象从文字上理解为“具体的东西”,人的感观能够感觉到它。 Grady Booch指出对象具有以下特性: 对象有状态 对象可以具有行为 对象有一个唯一的身份,以区别于其他对象,Grady Booch 面向对象方法的 最早倡导者之一,深入理解对象,6,7,课间思考,确定以下对象的可能状态: 一部手机 一个mp3播放器,答案: 手机状态:关机,铃声,振动,通话 mp3播放器:播放,暂停,倒带和快进,8,在一所学校里有哪些对象? 这些对象可以有哪些行为? 这些对象的唯一身份是什么?,9,深入理解类,类是对同一种对象的抽象描述,是对象的模板。 类包括以下内容 1类名 2该类对象的基本属性(身份+状态+特性) 3该类对象所具有的行为,10,如汽车类包括如下内容: 汽车 类名 车牌号 颜色 大小 基本 重量 属性 速度 油量 移动 行为,11,习题:设计一个类来描述学生,请确定类名、类的属性、类的行为 习题:设计一个类来描述医生,请确定类名、类的属性、类的行为,12,4 C#中的类,class Car public int carID; public string color; public float speed; public void Move() System.Console.WriteLine(“汽车在前进!“); ,13,class TestClass static void Main() Car car1=new Car(); car1.Move(); ,14,习题:将前面设计的学生类用C#代码表示出来,并定义测试类测试之。,15,6.2 类的定义,类是具有相同特征的多个对象的模板,它封装了这些对象的所有共同特征,包括数据和能完成的操作。 因此定义类主要是在定义类的数据和能完成的操作。 类的数据数据成员 类能完成的操作函数成员,16,C#中类的定义格式如下:,类修饰符 class 类名 /类体 ;,类修饰符用于定义类的可访问性等信息 如public、abstract等,17,public class Person public int age; public void Say() System.Console.Write(“My age is:”+age); ,例:,class是定义类的关键字,这里我们定义了一个Person类。 age是类的数据成员。 say是类的函数成员.,18,6.3 对象的产生和使用 类名 对象名=new 类名(); 如:Person p1=new Person(); 在堆内存中划分了一块区域,用于存储Person类的一个对象,然后使得一个引用变量p1指向堆中的那个对象。,某个函数的栈空间,0x3000,栈内存,New Person() 产生的对象,0,p1,0x3000,对象的地址,age,堆内存,19,当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值。,方法中定义的变量不会被初始化。,20,对象的使用:,对象创建好以后,我们可以通过 对象.成员 的格式来访问对象的成员。 访问对象的数据成员 对象名.数据成员 如p1.age; 调用对象的函数成员 对象名.函数成员(实际参数表); 如p1.say();,21,Person p1=new Person(); Person p2=new Person(); p1.age=20; p1.say(); p2.say();,例:,22,习题: 你是软件研发组成员,你所在小组接到一个员工管理系统的开发任务,你的任务是使用面向对象的思想用C#语言编程,要求: 创建一名员工,输入其工号、姓名、工作年限、工资等信息,并输出各项信息.,23,习题: 运用面向对象思想实现一个计算器程序,有加、减、乘、除功能。,24,6.4 对象的生命周期, Person p1=new Person(); 离开作用域后p1失效,Person对象成为垃圾,Person,p1, Person p1=new Person(); p1=null; ,Person,p1,Person,p1,两种情况,25, Person p1=new Person(); Person p2; p2=p1; p1=null; ,Person,p1,Person,p1,p2,Person,p1,p2,null,26,这里讨论顶级类的可访问性(如果类不是在某个类内声明的,那这个类就是顶级类 ) 类有三种访问修饰符 public(访问该类不受限制) internal(访问仅限于此程序(类所在的程序内,即同一个编译单元:dll或exe中),出了此程序,外界无法访问到该类. ) 默认(相当于internal),6.5 类的可访问性,27,6.6 类的成员的可访问性,例:教材例6.10,28,6.7 分部类,通过类修饰符partial可以将类的定义分开,甚至可以分散到不同的文件中,这种类称为分部类。编译时这些类的分片会被合并起来。,29,public partial class Student protected string name; public void f1() public s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论