- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《C#程序的设计演示课件》[资料全集]c#6
第六章 面向对象程序设计;本章主要内容;对象、类和结构概述;结构(struct);对象;类声明;abstract class Shape //抽象基类,不可实例化
{
public const double pi = System.Math.PI; //常量
protected double x, y; //受保护,可继承变量
public Shape(){ //默认构造函数
x=y=0;
}
public Shape(double x,double y){ //带参数构造函数
this.x = x;
this.y = y;
}
public abstract double Area(); //抽象方法,需重载
}
在该例中 abstract class Shape{…}类定义使用了修饰符abstract,这表示该类是抽象基类,不可实例化。类的名称位于 class 关键字的后面,就是Shape。Shape类定义的其余部分是类的主体,用于定义行为和数据。类的字段、属性、方法和事件统称为“类成员”。;分部类定义;类继承定义;字段;字段;构造函数;构造函数;析构函数;方法声明;方法的参数;值传递值类型参数示例 ( ParamSample项目代码):
class PassingValByVal{
static void SquareIt(int x) {
x *= x;
System.Console.WriteLine(SquareIt方法内的n值: {0}, x);
}
static void Main()
{
int n = 5;
System.Console.WriteLine(调用SquareIt方法前的n值: {0}, n);
SquareIt(n); // 通过值来传递值
System.Console.WriteLine(调用SquareIt方法后的n值: {0}, n);
}
}
该程序运行输出:
调用SquareIt方法前的n值: 5
SquareIt方法内的n值: 25
调用SquareIt方法后的n值: 5
在这例子里,变量 n 为值类型,包含数据(值为 5)。当调用 SquareIt 时,n 的内容被复制到参数 x 中,在方法内将该参数求平方。但在 Main 中,n 的值在调用 SquareIt 方法前后是相同的。实际上,方法内发生的更改只影响局部变量 x。;值传递引用类型例子:
class PassingRefByVal{
static void Change(int[] pArray) {
pArray[0] = 888; // 将pArray的第一个元素赋值为888, 改变arr[0]
pArray = new int[5] { -3, -1, -2, -3, -4 }; // 引用新的数组,不改变arr
System.Console.WriteLine(方法内的数组第一元素: {0}, pArray[0]);
}
static void Main() {
int[] arr = { 1, 4, 5 };
System.Console.WriteLine(调用方法前的数组第一元素:{0}, arr[0]);
Change(arr);
System.Console.WriteLine(调用方法后的数组第一元素:{0}, arr[0]);
}
}
在上个示例中,数组 arr 为引用类型,在未使用 ref 参数的情况下传递给方法。在此情况下,将向Change方法传递指向 arr 的引用的一个副本。Change方法有可能更改数组元素的内容,输出显示arr[0] 从 1 改为 888。但是,在 Change 方法内使用 new 运算符来分配新的内存部分,将使变量 pArray 引用新的数组。因此,这之后的任何更改都不会影响原始数组 arr(它是在 Main 内创建的)。;引用传递值类型示例
class PassingValByRef
{// 参数X的值通过关键字ref来传递,改变x的值,将会改变输入的x的值
static void SquareIt(ref int x) {
x *= x;
System.Console.WriteLine(SquareIt方法内的n值: {0}, x);
}
static void M
您可能关注的文档
最近下载
- 城镇污水处理厂工艺全套推荐.ppt VIP
- 05J927-1汽车库建筑构造图集.pdf VIP
- 实验室生物安全生物安全实验室操作规范(微生物.pptx VIP
- 2025年秋季开学全体教师大会上,校长讲话:教育从来不靠一个人燃烧,而靠一群人沉下去!.docx
- 中小学校服验收记录单(参考模版).doc VIP
- DLT5418-2009脱硫吸收塔施工及验收规范.pdf VIP
- 2020新译林版高中英语选择性必修四Unit2 Integratedskills课件.pptx VIP
- 医院信息科笔试、面试题(附答案).docx VIP
- 2020译林版新教材高中英语选择性必修四第二单元知识点复习课件.pptx VIP
- 详解《工贸企业重大事故隐患判定标准》2023版.pptx VIP
文档评论(0)