形式参数和实际参数

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

为了调用这个方法,必须向它提供一个具有 String 类型的字符串。例如,可以编写如下一个 main 来 调用上述的方法:
public static void main(String[] args) { printTwice("Dont't make me say this twice!"); }
在此,由我们提供给该方法的字符串被叫做实际参数,并且这个实际参数还被传入该方法中。我们就是 以这种方式创造了包含"Don't make me say this twice!"文字的字符串值,并把它作为 printTwice 方 法的实际参数传到方法中。但在该方法的执行过程中,字符串却违背了它“本身”的意愿,被打印了两次。
在此,有一个十分重要的事项需要强调说明:相对形式参数的变量名字(phil)来说,作为实际参数传 入的变量名字(argument)不起任何作用。让我们把这句话再说一遍:
相对形式参数的变量名字(phil)来说,作为实际参数传入的变量名字(argument)不起任何作来自百度文库用。
实际参数和形式参数可以是同名,也可以是异名,重要的是要认识到它们之间除了具有相同值外(在此是
还有一些方法需要数量更多的实际参数,比如 pow 方法,它就需要两个 double 的数,其中一个作为幂 底数,另一个作为幂指数。
请注意,在这些场合中,我们不仅要指定实际参数的个数,而且也要指定每一个实际参数的类型,所以 大家不必惊奇,在编写方法的定义过程中,必须为每一个形式参数指定它的类型。例如:
public static void printTwice(String phil) { System.out.println(phil); System.out.println(phil); }
在这个方法中,只有一个名叫 phil 的参数,而这个参数的类型是 String 类型。不管这个参数的实际值 是什么(在此时,我们对于它的实际值没有给出任何信息,完全不知道它会是什么),都要求此方法将输入 的实际值连续打印两次。之所以挑选了 phil 作为参数名,是为了让大家明白可以任意地为参数命名。在实 际的编程中,大家还是应该挑选用比 phil 更加贴合实际的名字。
形式参数和实际参数: 我们曾经使用过的某些内置方法都需要实际参数,它(们)必须是提供给方法,以让方法“做事”的那些值。 例如,如果我们想要计算三角函数 sin 的值,就必须给它一个自变量数值,这时,sin 函数需要一个 double 类型的值作为它的实际参数。为了打印一个字符串,我们就要提供一个字符串。这就是为什么 println 需 要一个 String 类型的值作为实际参数的原因。
都能正确的打印。当然,可以把它看成是一个例外。 ●如果调用方法时违背了以上原则,编译器常常会发出含糊的信息。它并不会说"你已把错误类型的实
际参数传入这个方法中",而可能会说:“出现了某些事,因而无法找到一个具有如此名字的方法,使之可 以接受这种类型的实际参数。”现在,要是我们见到这类信息时,就可以理解它的含义了。
相同的字符串"Never say never."),它们并不的同一性质的东西。 提供用做实际参数的值,必须与调用方法中的形式参数具有相同的类型。这一规则十分重要。但是在 Java
中,由于下述的两个理由,常常使它更为复杂化了: ●某些方法可以接受各种不同类型的实际参数。例如,print 和 println 接受到了任何类型的参数后,
类似地,如果我们已有了一个 String 类型的变量,也可以把这个变量代替字符串,作为实际参数传进 方法中去:
public static void main(String[] args) { String argument="Never say never."); printTwice (argument); }
相关文档
最新文档