首页 | IT新闻 | 硬件 | 操作系统 | 开发 | 网络编程 | 数据库 | 热门框架 | 网络安全 | 组网 | 建站指南 | 网页制作 | 特效 | 实用技巧 | 服务器 | 办公 | QQ | 探索 | 社区

  • 技术部落
  • 部落首页 > 程序开发 > C/C#/C++ > 正文
  • Visual C# 2005快速入门之调用方法
      2007-2-25  来源:网络资源  编辑:Jsbulo  热度:

    方法之所以存在就是为了被调用!使用方法名来调用一个方法,要求它执行它的任务。如果方法要获取信息(由它的参数指定),就必须提供它需要的信息。如果方法要返回信息(由它的返回类型指定),就应该以某种方式来捕捉这个信息。

      指定方法调用语法

      为了调用一个C#方法,需要采用如下语法形式:

    methodName (argumentList)

      methodName(方法名)必须与调用的那个方法的名称完全一致。记住,C#语言是区分大小写的。
    argumentList(参数列表)用于提供将由方法接收的可选信息。必须为每个参数(形参)提供一个参数值(实参),而且每个参数值都必须兼容于它对应的形参的类型。如果方法有两个或者更多的参数,那么在提供参数值时,必须使用逗号来分隔不同的参数。

      重要提示每个方法调用中都必须包含一对圆括号,即使调用一个无参数的方法。

      下面再次列出了addValues方法:

    int addValues(int leftHandSide, int rightHandSide)
    {
    // ...
    }

      addValues方法有两个int参数,所以在调用该方法时,必须提供两个以逗号分隔的int实参:

    addValues(39, 3); // 正确方式

      还可以将直接量39和3替换成int变量的名称。这些变量的值会作为参数值传递给方法,例如:

    int arg1 = 99;
    int arg2 = 1;
    addValues(arg1, arg2);

      下面列出了一些不正确的addValues调用方式:

    addValues; // 编译时错误,无圆括号
    addValues(); // 编译时错误,无足够实参
    addValues(39); // 编译时错误,无足够实参
    addValues("39", "3"); // 编译时错误,类型错误

      addValues方法将返回一个int值。这个int值可以在能够使用一个int值的任何地方使用。例如:

    result = addValues(39, 3); // 作为赋值操作符的右操作数
    showResult(addValues(39, 3)); // 作为另一个方法调用的实参

      在下面的练习中,我们将继续使用MathsOperators应用程序。这一次,我们将研究一些方法调用。

      研究方法调用

      1.返回Methods项目。如果是刚完成上一个练习,该项目应该已经在Visual Studio 2005中打开;否则,请从My Documents文件夹的\Microsoft Press\Visual CSharp Step by Step\Chapter 3\Methods子文件夹中打开它。

      2.在“代码和文本编辑器”窗口中显示Form1.cs的代码。

      3.找到calculate_Click方法,观察该方法在try语句和起始大括号之后的前两个语句。

      这两个语句是:

    int leftHandSide = System.Int32.Parse(leftHandSideOperand.Text);
    int rightHandSide = System.Int32.Parse(rightHandSideOperand.Text);

      这两个语句声明了两个int变量,分别叫leftHandSide和rightHandSide。然而,最有趣的地方是变量的初始化方式。在两个语句中,都调用了System.Int32类的Parse方法(System是一个命名空间,Int32是该命名空间中的一个类的名称)。Parse方法要求获取一个字符串参数,并能把它转换成一个int值。执行了这两个语句之后,用户在窗体上的leftHandSideOperand和rightHandSideOperand文本框中输入的任何内容都会转换成int值。

      4.观察calculate_Click方法的第4个语句(在if语句和另一个起始大括号之后):

    calculatedValue = addValues(leftHandSide, rightHandSide));

      该语句调用addValues方法,将leftHandSide 和rightHandSide变量的值作为方法的实参来传递。addValues方法的返回值将存储到calculatedValue变量中。

      5.继续观察下一个语句:

    showResult(calculatedValue);

      该语句调用showResult方法,将calculatedValue变量的值作为方法的实参来传递。showResult方法不返回任何值。

      6.在“代码和文本编辑器”窗口中找到之前讨论过的showResult方法。该方法只有一个的语句:

    result.Text = answer.ToString();

      注意,即使没有参数,调用ToString方法时也使用了圆括号。

      提示为了调用从属于其他对象的方法,可以在方法名之前附加对象名前缀。在上例中,表达式answer.ToString()调用的就是从属于answer对象的ToString方法。