有人能解释一下为什么这是有效的吗?
我在 Eclipse 中有 2 个类。 名为“Car”的类包含以下代码。
public class Car {
public void printOut(String variable1){
System.out.println("Hello " +variable1);
}
}
还有另一个类,也就是我的'main'所在的地方,叫做“House”,里面的代码是
import java.util.Scanner;
class House {
public static void main(String args[]){
Scanner input = new Scanner(System.in);
Car carObject = new Car();
System.out.println("Enter name here: ");
String variable2 = input.nextLine();
carObject.printOut(variable2);
}
}
当我运行代码时,它会工作,它会写“在此处输入名称”,当我输入它时,它会继续说“你好,输入的名称””
我的问题是,'variable1' 和 'variable2' 是否彼此有任何关系,除了它们都是 String 类之外。
因为我对代码编译正确的原因感到困惑。
对我来说,看起来变量 1 与变量 2 没有相关性,即使它们都是 String 类,看起来它们也不会相互交互,并且变量 1 没有在“House”中使用"类,但它仍然知道编译我输入的任何内容。 就好像'variable1'被'variable2'替换并且打印出variable2包含的任何内容。
最佳答案
Car
类中的方法定义是您使用它时的原型(prototype)。您是否曾经用“黑匣子”教过数学函数?你输入一个数字,然后得到输出。因此,您输入 3,如果函数是 f(x) = Xx2,则输出将是 6。在您调用该方法之前,var2 与 var1 完全不同。然而,在该方法中,传递了 var2 并替换了您在该方法中使用的所有 var1。别担心,我在开始Java的时候也没有得到这个
关于java - Java 中带参数的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12995855/