我如何制作一个成员的实例并在任何地方使用它

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何制作一个成员的实例并在任何地方使用它相关的知识,希望对你有一定的参考价值。

我在代码中到处都使用了特定的变量,因此决定将其移至单个文件。以下是我的代码,

class Package{
    private int variable;
    Package(){
        if(variable!=null)
            throw new RuntimeException("Error");
        else{
            //Call an API to fill in the variable
        }
    }
    static int provider(){
        if(variable==null)
             Package();
        return variable;
    }
}

而且我在代码的多个部分中使用了该“变量”。这造成了不一致,我想妥善处理。它更像是一个Singleton,它被初始化一次并且可以多次使用。因为我是初学者,所以我面临一些困难。帮助将不胜感激。PS:这是Spring产生的环境。

答案

根据您的功能,您可以将此类标记为@Component类或@Service类。

并且只需在所有其他类的此类对象上使用@Autowired注释。

@Service
class Package{
    private int variable;
    Package(){
        if(variable!=null)
            throw new RuntimeException("Error");
        else{
            //Call an API to fill in the variable
        }
    }
    static int provider(){
        if(variable==null)
             Package();
        return variable;
    }
}

并用于其他类,如:

@Autowired
Package package;

Refer here to learn about Dependency Injection

以上是关于我如何制作一个成员的实例并在任何地方使用它的主要内容,如果未能解决你的问题,请参考以下文章

我如何使用 codeanywhere 片段

制作要在任何文件中使用的 Socket io 单例类

Android:定义一次视图及其子项,并在任何地方重用它

在任何地方保留任何托管对象是一个坏主意,这是真的吗?

JabbR 代码库是不是记录在任何地方?

为啥当我使用 Pygame 时 Spyder 不能在任何地方显示我的图形输出?