这个时候就传递了两个整数类型进去了,分别命名为a和b。这个时候方法里面就可以直接拿a和b开始用了。
我们调用的时候就可以直接:
1 add(5,6);
这样我们就把整数5和整数6传递给了名字叫add方法的这个方法。5和6就是实际传给add方法的参数,也就是【实参】。通常情况下,我们可能传入的是两个变量。例如:
1 int x=6;2 int y=7;3 add(x,y);
这个时候x和y就是实参了。分别对应的是add()方法的形参a和b。要注意一点,a和b跟x、y有什么关系呢?其实从名字上看是一点关系都没有的,唯一有关系的就是他们的数据类型必须要一一对应。逗号前面,方法要求传的是整数型,你调用这个方法的时候就必须传递一个整数,后面如果要求传递一个数组,你就必须传递一个数组类型进去,否则就调用错误了。
形参的命名a、b就是的意义就是给传入的两个信息命个名字。第一个我叫a,第二个我叫b。在方法体内部我就可以直接调用了这两个参数了。仅此而已。比如实参传来的两个整数型变量叫a、b形参也叫a、b,这个时候传入的a、b和方法内部的a、b一样吗?表面看一样,其实传入的a和b是方法外的两个变量,方法内部也把重新命名了两个变量叫a和b来接收方法外的两个变量。方法外的方法内部的a和b占用了不同位置的内存的。所以不是同一个东西。
接着说,如果我需要把若干个整数进行相加。有的时候是两个,有的时候是3个,有的时候我还要把5个数进行相加。这个时候我们需要命名不同的函数名吗?Java提供了方法重载的功能。我们就用同一个函数名,需要传两个整数在函数名的小括号里面传入两个整数形参,需要传三个就传入三个整数形参。函数被调用的时候,你传入了几个实参,java就会去寻找能传入几个实参的那个函数,然后把实参挨个传过去就可以了。
这样在调用的时候会很方便。一个函数名就对应一种功能。如果是两个都需要传入两个整数类型的函数,他们的区别只是返回值不同,这是不算方法重载的,这样会报错。因为java会认为他们是同一个功能的函数。简单的说,java看两个方法是不是重复只看形参的类型和个数,不管该方法的返回值。
下面是一个完整的代码实例: