C#新课件第七讲

C#新课件第七讲

ID:43515767

大小:1.01 MB

页数:29页

时间:2019-10-09

C#新课件第七讲_第1页
C#新课件第七讲_第2页
C#新课件第七讲_第3页
C#新课件第七讲_第4页
C#新课件第七讲_第5页
资源描述:

《C#新课件第七讲》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、C#语言编程第七讲:方法、递归本章内容属性重载递归算法一、属性属性classCar{为类中字段手写Get方法privatestringbrand;publicstringGetBrand()和Set方法是很麻烦,{returnbrand;所以程序帮我们自动的封}publicvoidSetBrand(stringvalue)装出这个两个方法。{brand=value;}}属性classCar属性是这样的成员:它提供灵活的{机制来读取、编写或计算某个私有privatestringbrand;publicstringBrand字段的值。{可以像

2、使用公共数据成员一样使用get{属性,但实际上它们是称作“访问returnbrand;器”的特殊方法。}set这使得可以轻松访问数据,此外还{有助于提高方法的安全性和灵活brand=value;}性。}}属性get访问器,用来读取属性值。set访问器,用来给属性赋值。注意:不具有set访问器的属性被视为只读属性。不具有get访问器的属性被视为只写属性。同时具有这两个访问器的属性是读写属性。属性可将属性标记为public、private、protected、internal或protectedinternal。同一属性的get和set访问器

3、可能具有不同的访问修饰符。例如,get可能是public以允许来自类型外的只读访问;set可能是private或protected(限制访问器可访问性)。注意:仅当属性同时具有set和get访问器时,才能使用访问器修饰符,并且只允许对其中一个访问器使用修饰符。练习将昨天写的Get方法和Set方法全部替换为属性二、数据类型C#数据类型值类型引用类型指针类型枚举类型结构类型Objectstring类接口委托数组数值类型布尔类型自定义结构类型decimal整数类型浮点类型sbytebytecharshortushortintuintlongul

4、ongfloatdouble值类型和引用类型C#中有两种类型:引用类型和值类型。publicstaticvoidMain(string[]args)值类型:在栈中分配空间,由{系统自动分配。//值类型,由系统自动在栈中分配空间inta;引用类型:在堆中分配空间,//引用类型,需要用new关键字去在堆中分配空间int[]myArray=newint[5];由程序员用“new”来分配空间}注:string类型属于特殊的引用类型,以后会介绍值类型在做赋值操作的时候,值类型和引用类型有很大的区别。publicstaticvoidMain(strin

5、g[]args){inta,b;值类型变量互相赋值之后,两a=3;变量做的任何操作都互不影响,b=a;b=33;因为他们在不同的空间操作。Console.WriteLine(b);b=33;Console.WriteLine(a);a=3;}引用类型publicstaticvoidMain(string[]args){int[]a=newint[1];int[]b=newint[1];引用类型互相赋值之后,他们a[0]=3;b=a;共用同一个空间,相互影响。b[0]=33;Console.WriteLine(b[0]);b[0]=33;C

6、onsole.WriteLine(a[0]);a[0]=33;}练习将冒泡排序封装成方法,在Main方法种调用方法后,在Main方法中遍历输出结果。三、方法参数方法参数方法的形式参数与实际参数classMainClass形式参数(形参){publicstaticvoidMain(string[]args){MyMathmymt=newMyMath();classMyMath{intmyScore=60;publicvoidSwap(intx,inty)intyourScore=100;{mymt.Swap(myScore,yourScor

7、e);inttemp=x;}x=y;}y=temp;}}实际参数(实参)方法参数classMainClass{publicstaticvoidMain(string[]args){MyMathmymt=newMyMath();intmyScore=60;因为形式参数的类型为值类型,intyourScore=100;所以myScore的值并不会改变。mymt.Swap(myScore,yourScore);//myScore=60Console.WriteLine(myScore);}}引用参数值类型参数想要达到引用类型参数的效果,需要用到

8、引用参数。引用参数以ref修饰符声明。引用参数classMainClassclassMyMath{{publicstaticvoidMain(string[]args)publicvoidSw

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。