c#重载、静态方法、构造函数析构函数ppt课件

上传人:txadgkn****dgknqu... 文档编号:240778120 上传时间:2024-05-07 格式:PPT 页数:14 大小:98.54KB
收藏 版权申诉 举报 下载
c#重载、静态方法、构造函数析构函数ppt课件_第1页
第1页 / 共14页
c#重载、静态方法、构造函数析构函数ppt课件_第2页
第2页 / 共14页
c#重载、静态方法、构造函数析构函数ppt课件_第3页
第3页 / 共14页
资源描述:

《c#重载、静态方法、构造函数析构函数ppt课件》由会员分享,可在线阅读,更多相关《c#重载、静态方法、构造函数析构函数ppt课件(14页珍藏版)》请在装配图网上搜索。

1、方法的格式既无参数也无返回值的方法,如:void fun()有参数但无返回值的方法,如:void fun(int a,char ch)无参数但有返回值方法,如:double fun()既有参数又有返回值的方法,如:int fun(string s)方法的格式既无参数也无返回值的方法,如:1方法中的参数(I)方法中参数的传递值传递、引用传递-ref、输出参数-out,例:class Test static void Main()void fun(ref int x,ref int y)int t=x;int a=3,b=5;x=y;new Test().fun(ref a,ref b);y=t;

2、Console.WriteLine(a=+a);Console.WriteLine(a=+a);将上面代码中的 ref 关键字去掉,就成了按值传递,再把 ref 换成 out 试试!方法中的参数(I)方法中参数的传递2方法中的参数(II)ref 与 out 的区别:1、ref 必须在函数体外初始化。2、out 必须在函数体内初始化,在外面初始化没意义。也就是说,out型的参数在函数体内不能得到外面传进来的初始值。3、两者在函数体的任何修改都将影响到外面。方法中的参数(II)ref 与 out 的区别:ref-接收3变长参数使用变长参数可以接收多个不确定个数的参数,用关键字 params。变长参

3、数必须位于形参列表的最后,而且只能是一维数组。params 不能与 ref 和 out 联用:static void print(params int a)Console.Write(有0个元素,a.Length);foreach(int i in a)Console.Write(i);static void Main()int arr=3,9,2;print(arr);print(35,67,88,91,16);print();变长参数使用变长参数可以接收多个不确定个数的参数,用关键字 4方法的重载方法名相同,但方法中参数参数的个数、类型及顺序不同,即为重载方法的返回值不参与重载。如下:vo

4、id fun(int x);int fun(int x);void fun(int x);int fun(int x,int y);void fun(int x,double y);void fun(double y,int x);不是重载,编译报错是重载,可以使用是重载,可以使用方法的重载方法名相同,但方法中参数的个数、类型及顺序不同,即5构造方法(I)完成对类实例对象的初始化初始化工作。一般(通过方法的参数)用来对类的成员变量进行初始化操作。有以下几点特征:1、具有与类相同的名称、具有与类相同的名称2、没有返回值类型、没有返回值类型3、该方法内部没有、该方法内部没有 return 语句语句

5、当一个新的对象生成时,构造方法由系统自动调用自动调用,而且只执行一次只执行一次例:战士们进入阵地时,每个人都会自动完成卧倒、瞄准例:战士们进入阵地时,每个人都会自动完成卧倒、瞄准等动作,指挥官没有必要一一告诉等动作,指挥官没有必要一一告诉构造方法(I)完成对类实例对象的初始化工作。一般(通过方法的6构造方法(II)每个类都必须要有构造方法如果我们在类中没有显式地定义构造方法,系统将提供一个不带参数的、什么都不做的构造方法一旦我们定义了构造方法,系统将不再提供默认的构造方法class Student int id;string name;public Student (int id,string

6、 name)this.id=id;this.name=name;一旦在构造方法前面一旦在构造方法前面加上了加上了void 关键字,关键字,那么它将成为一个普那么它将成为一个普通的成员方法!通的成员方法!构造方法(II)每个类都必须要有构造方法class Stud7构造方法的重载class Student public int id=2;public string name=Tom;public int age=21;public Student(int id,string name,int age)this.id=id;this.name=name;this.age=age;public St

7、udent(int id,string name)this.id=id;this.name=name;public Student()/以下是主方法中的操作以下是主方法中的操作public static void main(Stringargs)Student stu1=new Student();Student stu2=new Student(103,Mike);Student stu3=new Student(107,Mary,18);含有三个参数的构造方法含有三个参数的构造方法含有二个参数的构造方法含有二个参数的构造方法无参构造方法无参构造方法构造方法的重载class Student/

8、以下是主方法中8构造方法与 this在一个构造方法中可以使用this关键字调用它的另一种重载形式,如:public Student(int id,string name)this.id=id;this.name=name;public Student(int id,string name,int age):this(id,name)/此代码调用了上面的重载形式此代码调用了上面的重载形式 this.age=age;构造方法与 this在一个构造方法中可以使用this关键字调9析构方法以符号开头,用于执行清除关闭工作不接收参数、没有返回值、没有修饰符析构方法不能重载一个类只能有一个析构方法在垃圾收

9、集器抛弃一个对象之前,先调用析构方法不能手动调用,只能由垃圾器调用析构方法以符号开头,用于执行清除关闭工作10静态成员在类中,用 static修饰的静态成员从一开始就存在,而无须用 new 来创建;也就是说在类的对象产生之前,static 成员就已经出现了;没有用static修饰的成员被称为“实例成员”无论创建多少类的实例对象,它们都共用同一个(组)static 成员static 成员只能只能用类名直接调用静态方法中不能不能使用 this 关键字静态成员在类中,用 static修饰的静态成员从一开始就存在11静态与实例成员的相互调用静态方法不能调用实例成员实例方法可以调用静态成员静态与实例成员

10、的相互调用静态方法不能调用实例成员静态成员空间12装箱与拆箱是值类型与引用类型间的相互转换在C#中每一种类型都是从System.Object类派生而来的值类型转换成对象:装箱对象转换成值类型:拆箱int myInt1=28;object myObject=myInt1;/装箱string str=myInt1.ToString();/装箱int myInt2=(int)myObject;/拆箱object 与 System.Object 是相同的装箱与拆箱是值类型与引用类型间的相互转换object 与 S13is 运算符is 运算符用于检查某一变量或对象是否与指定类型兼容,以确定是否可以进行相应的转换static void Main()Test t=new Test();Console.Write(20 is int);/输出true Console.Write(20 is long);/输出false Console.Write(t is Test);/输出true Console.Write(t is object);/输出trueclass Test int num=3;public void fun()Console.Write(num);is 运算符is 运算符用于检查某一变量或对象是否与指定类型14

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!