将变量从一个类传递到另一个类

时间:2013-02-22 17:04:50

标签: java class variables

大家好我正在创建一个简单的程序。我有2个类,第一个是SampleReturn,第二个是GetValues。我想要发生的是,当我在GetValues类中输入名称时,我输入的名称将存储在一个变量中,稍后将由SampleReturn类用于显示名称。不幸的是,我无法运行该程序,因为它有错误。代码如下,请帮助我解决此事。我只是自学,我真的很想学习Java。谢谢! :)

GetValues类中的代码:

import java.util.Scanner;
public class GetValues{
    Scanner inp = new Scanner(System.in);

    public static void wew(){
        System.out.println("Enter name: ");
        String a = inp.nextLine();

        private static String z = a;

        public static String kuhaName(){
            return z;
        }
    }
}

SampleReturn中的代码:

import java.util.Scanner;
    public class SampleReturn{
        public static void main(String[]args){

        String nameMo = GetValues.kuhaName();

        System.out.print("Your name is: " +nameMo);
    }
}

3 个答案:

答案 0 :(得分:5)

您的代码应该是这样的:

import java.util.Scanner;

public class GetValues
{
    private static Scanner inp = new Scanner(System.in);
    private static String z = "";
    public static void wew()
    {
        System.out.println("Enter name: ");
        String a = inp.nextLine();
        z = a;
    }
    public static String kuhaName()
    {
        return z;
    }
}

然后SampleRun.java应该是这样的:

//import java.util.Scanner;//no need to import
public class SampleReturn
{
    public static void main(String[] args)
    {
        GetValues.wew();//First input the name .
        String nameMo = GetValues.kuhaName();//Retrieve the name
        System.out.print("Your name is: " +nameMo);//Display the name
    }
}

答案 1 :(得分:3)

您在此代码中遇到了一些问题。

首先,你不能在另一个方法中拥有一个方法。其次,你永远不会调用实际读取输入的wew。假设你的意思是这样的:

public class GetValues{
    Scanner inp = new Scanner(System.in);
    private static String z;

    public static void wew(){
        System.out.println("Enter name: ");
        String a = inp.nextLine();

        z = a;
    }

    public static String kuhaName(){
        return z;
    }
}

现在你所要做的就是按顺序打电话给你的方法。

答案 2 :(得分:1)

首先想到的是wew方法没有结束括号}

您也无法在方法内声明一个字段。您可能希望在private static String z方法之外声明wew


我已经阅读了你的作业,虽然我不打算完全为你做功课,但我可以就你的课程架构给你建议。

首先,我要创建一个名为Person的课程。您可以随意调用您的课程,但对于本文的其余部分,我将此课程称为Person课程。

现在你希望你的班级有:

  • 用于存储name
  • Person的字段
  • 从用户获取输入并将其放入name字段的方法。
  • 打印name字段内容的方法。

您想要的main方法

  • 实例化您的Person
  • 称之为输入获取方法
  • 称之为打印方式。