实验四 C#面向对象程序设计(二)
一、实验目的
1. 掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义
和重载构造函数。能够根据给定的要求定义类并实现类的成员函数。 2. 理解类的成员的访问控制的含义,公有、私有和保护成员的区别。 3. 掌握参数传递的用法。 4. 掌握属性的作用和使用。
二、实验要求
1. 分析程序,上机验证结果。
2. 写出程序,并调试程序,要给出测试数据和实验结果。 3. 整理上机步骤,总结经验和体会。 4. 完成实验日志和上交程序。
三、实验内容
题目一:程序分析
(1) 分析程序,写出程序的运行结果,并上机进行验证,然后回答后面问题。 public class BankAccount {
static int totalAccountNumber=0; string BankAccountId;
double initialDepositAmount = 0.00; public BankAccount(string myId) {
this.BankAccountId = myId;
this.initialDepositAmount = 0.00; totalAccountNumber++; }
public void displayid() {
Console.WriteLine(\initialDepositAmount); }
public static void display() {
Console.WriteLine(\} }
public class Tester {
public static void Main() {
BankAccount mba = new BankAccount(\BankAccount mba2 = new BankAccount(\BankAccount mba3 = new BankAccount(\
BankAccount mba4 = new BankAccount(\
// Console.WriteLine(\mba2.displayid();
BankAccount.display(); Console.ReadLine(); }
}
请回答问题:
(1)按你自己的算法修改以上程序,比如可只输出生成的账户数。 (2)把注释去掉后会怎样,为什么?
(3)为什么display 用类名直接引用,可以用对象来引用么?尝试输出结果。 (4)类的静态变量和非静态变量的引用区别。判断一下语句的正确性:
静态方法只能使用静态变量,不能使用实例变量。因为对象实例化之前,实例变量不可用。这个观点真确么?()
类的静态变量只有一个版本,所有实例对象引用的都是同一个版本。()
对象实例化后,每个实例变量都被制作了一个副本,它们之间互不影响。()
题目二:程序编写
1. 编写一个传值调用的程序。
程序功能要求:程序首先给整型变量x 和y 赋初值3,5,然后使用传值调用方式调用方法对x 和y 做乘方并及输出x 和y 的乘方值,最后输出x和y得值。再将此方法给为对象调用加ref修饰查看输出结果差异。
【思考题】
1. 方法的参数传递有哪些方式?区别时什么? 2. 什么是构造方法。
实验五:创建Windows应用程序
一、实验目的
1.了解C#中的各种控件的属性赋值方法。 2.了解C#中控件的事件中输出的方法。 3.进一步熟悉C#程序的开发过程。
二、实验要求
1. 分析程序,上机验证结果。
2. 写出程序,并调试程序,要给出测试数据和实验结果。 3. 整理上机步骤,总结经验和体会。 4. 完成实验日志和上交程序。
三、实验内容
(3) 从开始菜单启动Visual Studio 2005。 (4) 选择“文件”“新建”“项目”命令,弹出“新建项目”对话框。在
“项目类型”列表框中选中Visual C#选项;在“模板”列表框中选中“Windows应用程序”选项;在“名称”文本框中输入项目名称;在“位置”文本框中输入或选择项目的保存位置。单击“确定”按钮,将显示窗口设计器窗口。
(5) 切换到“属性”窗口、“解决方案资源管理器”窗口和“类视图”窗口,查看
窗体的属性、项目的组成结构以及项目所设计的所有类。
(6) 双击打开“解决方案资源管理器”窗口中的各个文件,在代码编辑器窗口内查
看系统自动生成的与该项目有关的代码。
(7) 选择“调试”“启动调试”命令,运行程序,查看运行结果,然后关闭窗体。
(8) 在窗体上添加一个PictureBox控件和两个Button控件。设置窗体和各控件的
属性,如表1-1所示。
表1-1 窗体及各控件的主要属性 控件 Form1窗体 PictureBox1 Button1按钮 Button2按钮 Text(标题) BorderStyle(边框类型) Text(标题) Text(标题) 属性 Fixed3D 画图 退出 属性值 Windows应用程序测试 (9) 调整窗体大小以及各个控件的位置,如图1-1所示。
图1-1 调整控件位置后的界面
(10) 双击Button1按钮,在其Click事件内添加代码:
Graphics g = this.pictureBox1.CreateGraphics(); Pen p1 = new Pen(Color.Red, 5); g.DrawRectangle(p1, 80, 50, 100, 50);
(11) 双击Button1按钮,在其Click事件内添加代码:
if (MessageBox.Show(\你确定要退出吗?\请确认...\MessageBoxIcon.Question) == DialogResult.Yes)
Application.Exit(); //退出应用程序
(12) 选择“调试”“启动调试”命令,或按【F5】键,或单击工具栏上的
按钮,运行程序,查看运行结果。
(13) 在项目的保存位置处查看项目中过的所有文件。