预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共64页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第5章面向对象编程基础5.1面向对象概念5.2类5.2.1类的声明表5-1类修饰符5.2.2类的成员表5-2类成员表5-3访问修饰符5.2.3构造函数【例5-4】创建一个类,并使用静态构造函数。运行界面如图5.2所示,代码如下用F11单步运行,看看怎样调用静态构造函数、有参数构造函数,并了解它们调用的顺序。5.3方法5.3.1方法的声明修饰符5.3.2方法的参数【例5-8】当方法传递的是一个引用对象(如数组)时,对形参的修改会影响到实参(实质上属于引用参数,但参数前没有修饰符)。运行结果如图5.5所示。classMyclass {//形参x的值通过关键字ref来修饰,改变x的值,将改变输入的实参的值 publicvoidsquareit(refintx) { x*=x; Console.WriteLine("squareit方法内的x的值={0}",x); //输出方法内形参的值 } staticvoidMain(string[]args) { intn=6; Myclasstt=newMyclass(); Console.WriteLine("调用方法前的n值是:{0}",n);//输出没有调用方法前n的值 tt.squareit(refn);//调用方法,参数是引用类型 //调用方法后,实参的值也随着形参的改变而改变 Console.WriteLine("调用方法后的n值是:{0}",n); Console.Read(); } }【例5-10】使用输出型参数实例。运行结果如图5.7所示,代码如下:classParamsclass { publicvoidtest(paramsint[]list) { for(inti=0;i<list.Length;i++) {list[i]++;} foreach(intiinlist) //注意foreach的用法,i是临时变量,作用域在该语句内 {Console.Write("{0}\t",i);} //“\t”为转义字符,水平制表(跳到下一个Tab位置) Console.WriteLine("\n"); //输出索引的数组元素后换行 }5.3.3方法的重载【例5-12】方法的重载示例。运行结果如图5.9所示.publicdoubleadd(doublex,doubley,doublez) { Console.WriteLine("调用了三个实数相加的方法"); returnx+y+z; } staticvoidMain(string[]args) { inta=1,b=2,c=3; doublee=2.3,f=3.5,g=6.9; Myclasstt=newMyclass(); //创建一个实例tt,并调用默认的构造函数 tt.add(a,b,c); //调用三个整数相加的方法 tt.add(a,b); //调用两个整数相加的方法 tt.add(e,f); //调用两个实数相加的方法 tt.add(e,f,g); //调用三个实数相加的方法 Console.Read(); } } 5.3.4静态方法和实例方法【例5-13】静态字段、静态方法、实例字段、实例方法实例。注意下列程序代码哪些是错误的。5.4属性publicstringText //属性,可读可写,对text私有字段进行读/写,注意大小写 { get //读 {returntext;} set //写 {text=value;} //隐式参数value } publicstringFontName //FontName属性,只读属性,对fontname字段进行读,注意大小写 { get {returnfontname;} } publicintFontSize //FontSize属性,可读可写,对fontsize字段进行读/写,注意大小写 { get {returnfontsize;} set {fontsize=value;} } }classTest //定义一个类 { staticvoidMain(string[]args) { TextBoxText1=newTextBox();//创建一个对象,调用无参的构造函数 Console.WriteLine(“Text1.Text={0}”,Text1.Text); ext1.Text="这是文本框"; //对Text1对象的Text属性进行赋值,value="这是文本框" Console.WriteLine("Text1.Text={0}",Text1.Text); Console.WriteLine("Text1.Fontname={0}",Text1.FontName); Text1.FontSize=36; Console.WriteLine(