Java 在多个方法中运行类的单个实例

Java 在多个方法中运行类的单个实例,java,Java,我的班级关注的是: public class Gscore private score; public void setscore(float a) { float Score=a; } public getscore() { return Score; } 在两个单独的java文件中,我想在一个文件中设置分数,并在另一个java文件中访问设置值。这两个文件的代码片段如下所示: 文件1 Gscore s

我的班级关注的是:

public class Gscore
    private score;

    public void setscore(float a)
    {
        float Score=a;
    }

    public getscore()
    {
        return Score;
    }
在两个单独的java文件中,我想在一个文件中设置分数,并在另一个java文件中访问设置值。这两个文件的代码片段如下所示:

文件1

Gscore scoregen= new Gscore();
scoregen.setscore(playerscore);
new file2;
文件2

Gscore scoregen= new Gscore();
System.out.print(scoregen.getresponse());

但是,结果总是空的,我做错了什么?如何让文件2显示我在文件1中设置的值。

您的主要问题是在两个方法中使用的类实例不同。您将实例化类GScore两次。仅仅拥有相同的引用变量名并不等于拥有相同的实例


实例化实例后,将相同的对象引用传递给第二个方法。您应该能够获得不为NULL的结果。

您的主要问题是在这两个方法中使用的类实例不相同。您将实例化类GScore两次。仅仅拥有相同的引用变量名并不等于拥有相同的实例

实例化实例后,将相同的对象引用传递给第二个方法。您应该能够获得非空的结果。

首先

Public void setscore(int a)
{
Float Score=a;  // this is a problem as this is local scope
}
其次,要使用同一个对象,您应该只实例化它一次,然后将它传递给其他类

另一种可能是使用单例类作为开始

Public void setscore(int a)
{
Float Score=a;  // this is a problem as this is local scope
}
其次,要使用同一个对象,您应该只实例化它一次,然后将它传递给其他类


另一种可能是使用Singleton类

您没有愚蠢地设置值。。尝试调用您使用的
setscore
方法,然后使用
getscore
。是的,我将使用@3kings。确保使用setscore函数设置值。除非你只是不显示那部分代码?此外,用大写字母命名变量也是一种不好的做法。我希望文件1中设置的玩家分数与文件2中显示的一样。你设置的值不愚蠢。。尝试调用您使用的
setscore
方法,然后使用
getscore
。是的,我将使用@3kings。确保使用setscore函数设置值。除非你只是不显示那部分代码?另外,用大写字母命名变量也是一种不好的做法。我希望文件1中设置的玩家分数与文件2中显示的一样