资源预览内容
第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
亲,该文档总共7页全部预览完了,如果喜欢就下载吧!
资源描述
1、static 表示静态函数 Void 表示函数没有返回值;2、Console.WriteLine(Hello World); 语句中 Console 是类名称 WriteLine是该类下的一个函数,函数要加(),类、函数、名字空间第一字母要大写3. namespcae A public class PrintName public void intro()调用以上函数intro 方法 :先定义 A . PrintName a = new A . PrintName(); a为命名空间A里PrintName类下元素,别忘了最后那个加括号,这样一家人就可以直接调用旗下的函数了再调用 a.intro();4 属性: 属性的定义是对私有字段,其中属性命名一般根据定义的变量,如m_name 则命名为Name Private string m_name;Public string Name /属性 最典型特征就是 get 和set组合get return name;setname= value;/其中value系统默认为和name一样string型其读取、调用类似于类的字段的调用 及 zs.Name =” zhang san ”; 函数和方法的调用时 zs . SetName(“zhang san ”); SetName是一函数。总结:申明一个属性 首先要声明一个跟属性相关的 私有字段 private string m_name; 在接下来就是属性的声明,利用get 和set 2个访问器,给属性赋值时候会执行set访问器,在读取属性值时候i执行get 访问器, 属性的读取和写入 与字段的读取和写入没有什么区别。属性分四种:5、要想使用弹出窗口 或者messagebox 提示窗口, 必须添加引用 using system.windows.forms6、方法:定义:方法是包含一些列语句的代码块。可以实现一定的功能,拥有一个便于识别的名称,也要便于在程序中调用。声明方法的语法:成员访问修饰符 返回值类型 方法名称 (参数列表)Public、private int / 方法内容 ;其中:1) 同一个命名空间、同一类里面各个方法名称不能重复,大小写认为是不同的2) 参数列表没有 或多个 多个之间 用逗号隔开3) 没有返回值 返回值类型用 void 有返回值时用 return 来达到返回值的目的如: public static DateTime MyMethod()return DateTime . Now ; /Now不是 Now();说明Now是属性而不是方法 4) 没返回值的方法的调用, 直接就是方法写入 如 public static void MyMethod() 方法MyMethod 调用就是: MyMethod() 5) 带有参数的方法: public static void MyMethod( string AName) /创建一个带有一个string型的参数 Aname 其使用过程是:static void Main()string TempName=; /定义一个sring型字段TempNamewhile(TempName!=end) TempName= Console.ReadLine(); /TempName 是你输入 然后计算机读取的 用Console.ReadLine() 方法MyMethod(TempName);/ MyMethod()的调用:TempName是方法MyMethod的参数 程序执行到这步 自动调用MyMethod方法, Aname接受TempName传递的值,并执行MyMethod的语句 在屏幕上输出一串字符。 public static void MyMethod(string AName) Console.WriteLine(the name is +AName+n);6) 方法的参数传递机制:主要有三种方式:值参数、引用参数、输出参数值参数,不含任何修饰符。引用参数,以ref修饰符声明。输出参数,以out修饰符声明。 其区别见下面代码:class Method /创建一个类 public static void value(int i) /值参数方法,参数不需要任何修饰符,但不能丢了参数的类型 int i+;/ 方法的执行语句就是让 i 加 1 public static void Reference(ref int i)/引用参数方法,参数加ref修饰,但是参数类型扔需要i+; public static void Output(out int i)/输出参数方法,加OUT修饰i=0; /跟其他2种参数不一样 输出参数方法中就需要对 i赋初值,在主函数调用时候就不需要赋初值了i+;static void Main()int i=0; /先定义变量 、赋初值value(i); /调用方法 Console.WriteLine(i= +i); /输出结果 i 还等于0 原因:从主函数开始 先执行语句i=0,在执行方法value(),然后返回到 中 执行了方法 实现i+ 在返回到主函数 执行Console.WriteLine(i= +i); 但是console中的i 是主函数中第一个i 其值还等于0 虽然方法Value中I 已经加了 1int j=0; /先定义变量、赋初值Reference(ref j); /调用引用参数方法,形参也需要加ref,但不需要加类型 Console.WriteLine(j= +j);/ 先执行J=0 然后到方法 执行J+ ,J变成1 然后执行console语句 输出J 同一个J 因此J值发生改变int k; /定义就可以 输出方法不需要赋初值 因为在方法中已经赋初值了 Output(out k);/调用 同样要按照方法的 形参样式 加OUTConsole.WriteLine(k= +k);/ 执行执行结果: i=0 j=1 k=17)、向方法传递可变数量的参数: 使用 params 关键字,该关键字后面必须跟数组static int addi(params int value) /params 后面跟数组int,value是数组名int sum=0;foreach(int i in value) /对于任何一个数组vlaue中 i 的每个元素sum+=i;return sum;static void Main()Console.WriteLine(addi(75,60,94,46,78,44,115);/里面给数组value 赋初值了七 委托 delegate 委托代理静态方法1、委托类的声明:属性集 修饰符 delegate 函数返回类型 定义的代表标识符 (函数形参列表) ;修饰符包括:new、public、protected、internal和private。备注:1、委托的本质就是一个类 任何可以声明类的地方都可以声明一个委托 2.、委托的原型必须跟要进行委托的方法有相同的返回值类型、相同的形参类型和形参个数2、代码说明:delegate void EatDelegate(string food);/委托的声明用delegate关键字,声明一个委托EatDelegate,其返回值类型和形参 必须和其代理的方法有相同的返回值类型和形参 都是void string foodclass MyDelegatestatic void ZSEat(string food) /创建一个ZSEat静态方法Console.WriteLine(张三吃 +food);static void LSEat(string food) /创建一个LSEat静态方法Console.WriteLine(李四吃+food);static void WWEat(string food) /创建一个WWEat方法Console.WriteLine(王五吃+food);static void Main() / 主函数入口EatDelegate zs=new EatDelegate(ZSEat);/声明一个委托的实例ZS,并对其进行初始化,委托EatDelegate括号中输入的是ZSEat,表明其代理的方法是ZSEatEatDelegate ls=new EatDelegate(LSEat); /同上EatDelegate ww=new EatDelegate(WWEat); / 注意三个函数 一起委托 返回值类型和 形参都要一样 EatDelegate EatChain; /创建一个委托链EatChain= zs+ls+ww; / 委托链里面包括 zs、ls、ww。将zs、ls、ww这三个委托的实例 加入委托链中EatChain(西瓜); /调用委托 像调用方法一样,调用委托链,分别按委托链顺序执行,ZSEat、LSEat、WWEat 三个方法,将括号内的“西瓜 作为参数food 传入函数执行体中”,结果分别输出张三吃西瓜、李四吃西瓜、王五吃西瓜 ZS(“西瓜”);/输出张三吃西瓜 ZS是委托的实例,Console.WriteLine(张三,李四,王五开座谈会);EatChain -=zs; /将委托链中除去ZSConsole.WriteLine(张三出去接电话);EatChain(香蕉); /委托链没有了zs 所以输出结果为 李四吃香蕉 王五吃香蕉EatChain +=zs; / 委托链又加上zsConsole.WriteLine(张三回来了);EatChain(桔子”); /输出结果张三吃桔子李四吃桔子 王五吃桔子以上代码可简写成:(通过匿名方法来写)using System;delegate void EatDelegate(string food); /声明一个委托 EatDelegateclass MyDelegatestatic void Main()EatDelegate EatChain=null; /定义一个委托的字段 EatChain 并将其初试值设为空值EatChain +=delegate (string food)Console.WriteLine(张三吃 +food);/这段语句
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号