方法的重载与参数传递

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

this应用举例
总 结:
本节课重点讲述了C#中类和对象的定义 和使用;包括类中属性与服务的定义与应用, 构造函数与析构函数的定义和调用。本节课 是以后学习面向对象程序设计思想的基础, 希望同学们回去后加强练习,举一反三,灵 活应用。
e1.ShowInfoBiblioteka Baidu)
1
Employee.id
教学目标
• • • • • 类成员的修饰符; 构造函数与析构函数; 构造函数的重载; this关键字; 方法中参数的传递;
类的成员修饰符
public:不限制对类的访问 internal 对于类所在工程中任何类中的方法 是可访问的。 protected:只能在所在类或者所在类派生的 子类中使用 private:只有其所在类中使用
二、类的析构函数
定义:析构函数是类中的一种方法,目的在于 释放类的实例获取的资源。析构函数名为类名前 加一个~符号.(在对象被释放时调用) 举例:public ~Employee(){}
• 完成对象被删除前的一些清理工作。 • 在对象的生存期结束的时刻系统自动调用它,然后再释放 此对象所属的空间。 • 如果程序中未声明析构函数,编译器将自动产生一个默认 的析构函数。

类与对象的关系:
类的实例化结果就是对象,而对一类对象的抽象就是类。通过类 来建立对象,对象之间通过消息进行通信。(模具与产品)
一、类的声明举例
public class Employee { public string empName;
public string empSex; private float age; //声明类的变量
四、方法中参数据的传递
1、通过值传递参数 2、通过引用传递参数(ref out)
五、方法的重载
• 使用数据类型不同的参数重载方法 • 使用不同数目的参数重载方法。
六、 this关键字
• this关键字引用类的当前对象,成员通过this关键 字可以知道自己属于哪一个实例,关键字是一个 隐含引用,它隐含于每个类的成员函数中。 • 有时程序员可能会为一个类定义多个构造函数, 从而使得在实例化一个对象时可以有多种不同的 参数选择。在进行构造函数互相调用时,this关键 字调用参数最匹配的那个构造函数。
教学回顾:面向对象程序设计思想
对象(万事万物皆对象)
对象是系统中用来描述客观事物的一个实体,它是构成系统的一 个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务 组成,通俗地讲类的对象是该类的某一特定实体,即类类型的变量。

类(面向具象写抽象,利用抽象写具象)
类是具有相同属性和服务的一组对象的集合,它为属于该类的全 部对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。
public Employee()//构造函数 { empName=“王刚”;age=20;} //类的构造函数与析构函数 public Employee(string lsn,int lsa)//构造函数重载 { empName=lsn;age=lsa;} ~Employee(){}//析构函数 public void ShowInfo() { Console.WriteLine(“姓名:{0} 年龄:{1}", empName,age,);}
三、类方法的定义
一、方法的一般格式为: [访问修饰符] 返回类型 <方法的名称>(名称PASCAL风格)([参数列表]) {…//方法体;} 二、举例: public double Area(double r) {return 3.14*r*r} 三、说明: 1、修饰符同类的成员修饰符,增加abstract、 sealed virtual override static等 2、如果使用static修饰的方法,表明是静态方法,只能访问类中的静态成员,没 有修饰符static的方法是非静态的方法,可以访问类中任意成员。静态的 方法属于类所有,直接用类名引用,非静态的方法属于该类创建的实例 所有。 3、如果用virtual修饰的方法称为虚方法,反之称为非虚方法。 4、方法的参数可以有,也可以没有,如果有则表示是有参数方法,否则是无参 方法。
一、类的构造函数
定义:构造函数是类中一种特别类型的方法, 每次创建类的实例时都将调用它,它是与类同名 的方法,无任何返回值。(在类的实例化时调用)
例如:public Employee() { age=20;} public Employee(int ss) { age=ss;}
• 构造函数的作用是在对象被创建时使用特定的值构造对象, 将对象初始化为一个特定的状态。 • 在对象创建时由系统自动调用。 • 如果程序中未声明,则系统自动产生出一个默认形式的构 造函数
}
//声明类的方法
二、C#中对象的应用:
利用new 实例化具体化一个类,产生一个对象。对象是 系统中用来描述客观事物的一个实体,它是构成系统的一 个基本单位。类的对象是该类的某一特定实体,即类类型 的变量。
Employy e1= new Employy(); e1.name=”Blake”; Employy1.ShowInfo(); Employy e2= new Employy(“张三”,30); e2.ShowInfo();
对象实例化内存状态图
栈内存
Jeffrey Richter
e1.name e1.age Employee()
堆内存
36
e2.name e2.age Employee() Employee(int para1) e2.Input()
&e1 &e2
Employee(int para1) e1.Input() e1.ShowInfo()
相关文档
最新文档