调用方法
在之前的截图中,观察12和22行,你注意到有什么不同了么?他们看起来不太一样对不对?这些变量的名字,蓝箭头指的地方,他们是不同的
如果你看着这代码想着“这什么鬼?”,好吧放松。当我最开始讲方法的概念的时候,我用了你惊讶地那点时间来讲了代码是如何工作的。是得,事实上就是那么简单,但是在黎明到来之前我已经和它们打了许久了。All those book authors just assumed I'd "get it" because after all, they were experts.我查询了我所有的由专家编写的编程书籍,但是没有一本书会非常得体地描述代码是如何工作的,所有的做着只是假定我已经“get it”,因为在那之后,他们已经是专家了。
我通过调试和监听错误信息来尝试自己解出这个问题。在许多天之后,我终于可以“Ah-Ha”了。
在方法的括号内使用命令参数
命令参数?谁想出来的这个词儿?我们都知道参数是什么。我们所有人可能都会需要一些参数。好吧,有些人认为这个词对于程序来说是有益的。当你在字典中查询的时候可能结果是这样的:程序或函数在调用的时候所传递的一个值或地址。
是的,这个解释就是它的全部不是么。好的,让我们来真正的学习命令参数是什么和他们的作用。在前一个截图中,看第12行:
AddTwoNumbers(number1, number2);
在圆括号之内,是一些变量,number1
和number2
。这两个变量被称为命令参数,他们会准备通过方法。更简单的说法,这两个变量中存放的值,2和3,被放置在了小房间里。
在第22行,方法被定义为接收两个参数叫firstNumber
和secondNumber
。这意味着,在程序的某个地方会有一些值来分配给他们。
这里有一些我自己探索出来的秘密。在你看不到的场景之下,小房间内的2和3已经被分配给了firstNumber
和secondNumber
。
arguments and parameters
你看不见这些代码,如果你看到了,你就知道命令参数和参数是如何工作的了:
firstNumber = number1; secondNumber = number2;
- 自从number1容纳了2的时候,参数
firstNumber
也就容纳了2。 - 自从number2容纳了3的时候,参数
secondNumber
也就容纳了3。
现在,代码段执行完了并且5这个值就被显示在了Console面板中。
就像你看到的这样,输入参数和接收参数没有必要是一样的名字。他们只是你代码中不同地方的变量罢了。他们只是他们包含的值得替代品,当你使用方法内的代码段时,它就会被调用过去。