Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 需要帮助:从控制台输入int并将其传递到不同类中的方法中_Java_Syntax_Io - Fatal编程技术网

Java 需要帮助:从控制台输入int并将其传递到不同类中的方法中

Java 需要帮助:从控制台输入int并将其传递到不同类中的方法中,java,syntax,io,Java,Syntax,Io,我是初学者。我想从控制台中读取一个数字a,然后将它们存储在变量中,作为传递给另一个类(不同的.java文件)使用 如何编写这两个类的代码 public class PassedInMethod{ private int a; public PAssMethod(int a) { a = a; // TODO: where to get the a? System.out.println("a was passed in!"+a); } }

我是初学者。我想从控制台中读取一个数字
a
,然后将它们存储在变量中,作为传递给另一个类(不同的
.java
文件)使用

如何编写这两个类的代码

public class PassedInMethod{ 

   private int a;

   public PAssMethod(int a) { 
      a = a; // TODO: where to get the a? 
      System.out.println("a was passed in!"+a);
   }
} 



public class Mainclass {

  public static void main( String args[] ) {
      Scanner input = new Scanner( System.in );

      int a;

      System.out.print( "Enter your nember: " );
      a = input.nextInt();

      PassedInMethod(int a);
   }
}

如果要创建
passedMethod
类的实例,其中成员变量
a
包含传递给构造函数的值

试着改变

PassedInMethod(int a);

此外,如果要将实例变量更新为参数的值,则需要执行以下操作

this.a = a;
因为参数“隐藏”了实例变量

如果您不想创建一个实例,而只是调用另一个类中的一个方法,则需要将该方法设置为静态,如下所示:

public static void PassMethod(int a) {
    // ....
}
然后可以像这样调用该方法

PassedInMethod.passMethod(a);

passedMethod
然而,对于一个类来说并不是一个很好的名称,但我确信这只是为了这个问题中的示例。

您需要更改

PassedInMethod(int a);


这看起来更符合你的要求。您的代码有一些语法错误等等

public class PassedInMethod {
    private int a;

    public PAssMethod(int a) { 
        this.a = a;
        System.out.println("a was passed in!"+a);
    }
}

public class Mainclass {
    public static void main( String args[] ) {
        Scanner input = new Scanner( System.in );
        int a;

        System.out.print( "Enter your nember: " );
        a = input.nextInt();

        PassedInMethod myobj = new PassedInMethod();
        myobj.PAssMethod(a);
    }
}

“此.a更完整,但不是必需的。”。这是必需的。否则你只需要
a=a这相当于一个nop.My bad。我在想别的事情。谢谢你支持我:)对不起我的打字错误。“PassMethod()”,我的意思是“passedMethod()”。我可以在更正的代码中将“PassMethod()”更改为“passedMethod()”吗?
new PassedInMethod(a);
public class PassedInMethod {
    private int a;

    public PAssMethod(int a) { 
        this.a = a;
        System.out.println("a was passed in!"+a);
    }
}

public class Mainclass {
    public static void main( String args[] ) {
        Scanner input = new Scanner( System.in );
        int a;

        System.out.print( "Enter your nember: " );
        a = input.nextInt();

        PassedInMethod myobj = new PassedInMethod();
        myobj.PAssMethod(a);
    }
}