您的位置:首页 > 编程语言 > C#

C#----计算器例子

2015-11-29 16:18 671 查看
        学习C#也有一段时间了,总是听说C#面向对象,但也一直对它的概念很模糊,不能理解它和原来学习的VB有什么不同之处,直到今天做了一个计算器的小例子,才慢慢的看清面向对象的神秘之处。

        话不多说,直接将实现的过程展示一下:

        1. 首先建立一个Windows窗体,添加控件如图;

            


       运行情况如图:

            


          

         2.看似简单的界面,但也需要很多的代码来实现:

              1)Form窗体的代码<span style="font-size:18px;">namespace 计算器
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Operation_Load(object sender, EventArgs e) //对Combox控件进行初始化
{
cboOperation.Items.Add("+");
cboOperation.Items.Add("-");
cboOperation.Items.Add("*");
cboOperation.Items.Add("/");

}

private void button1_Click(object sender, EventArgs e) //对计算按钮添加事件
{
int n1 = int.Parse(txtNum1.Text);
int n2 = int.Parse(txtNum2.Text);

string o = cboOperation.Text;

Calculator c = new Calculator(n1, n2, o);
try //进行异常处理
{
lblResult.Text = c.GetRsult().ToString();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);

}
}
}
}
</span>       
                      2)类Calculator的代码

namespace 计算器
{
class Calculator
{
public Calculator(int n1,int n2,string oper)
{
this.num1 = n1;
this.num2 = n2;
this.operation = oper;
}

private int num1;
public int Num1
{
get { return num1; }
set { num1 = value; }
}

private int num2;
public int Num2
{
get { return num2; }
set { num2=value ; }
}

private string operation;
public string Operation
{
get { return operation; }
set { operation = value; }
}

public int GetRsult() //定义计算的函数
{
switch (operation)
{
case "+":
return this.num1+this.num2;
case "-":
return this.num1-this.num2;
case "*":
return this.num1 * this.num2;
case "/":
if(this.num2==0)
{
throw new Exception("除数不能为0");
}
return this.num1 / this.num2;
default:
throw new Exception("不支持这种操作");

}
}
}
}


总结:通过计算器的这个例子的实现,对于C#语言有了一定的了解,对于面向对象的概念的理解又加深了。这对于之后理解封装、继承和多态打下了一个良好的基础。而且通过不断地书写代码更有利于概念的理解。所以,多写代码还是一个必不可少的环节。
          

     
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: