如何在两个不同的类文件中的方法外部使用公共变量



我有两个class文件。Class_login.java和Class_Company.java。我在属性文件的不同位置存储了一个xpath。Class_login.java中编写了一个方法来加载这个属性文件。

static Properties objprop1 = new Properties();
public static FileInputStream fileInputS = null;
static void propManager() throws IOException {
fileInputS = new FileInputStream("C:\Test-Automation\FinanceSys\myproj\src\test\resources\xpath.properties");
objprop1.load(fileInputS);
}

CCD_ 1是在CCD_ 2中的方法外部声明的
我需要在Class_Company.java中再次加载此文件。如果我像Class_login.PropertyManager();一样使用它,并使用相同的objprop1,则不会加载文件,也找不到xpath
因此,我用不同的名称创建了相同的方法(static void PropertyManager() {(,
public static Properties objprop = new Properties();
我知道这不是正确的方法。但是,否则怎么可能做到这一点呢?在Class_Company.java的主方法中,我分别调用了这些方法,这样我就不会像以前那样得到一个空的xpath错误。

public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Class_login LogFeature = new Login();
Class_Company CC = new CCompany();
**Class_Company.PropertyManager();**
LogFeature.OpenBrowser("CH32");
LogFeature.EnterURL("http://localhost:90/AppFin");
LogFeature.PageMaximise();
LogFeature.EnterUserName("uname");
LogFeature.EnterPassword("abcd!@");
LogFeature.ClickLoginButton();
Thread.sleep(2000);
**Class_Company.propManager();**
CC.clickNewCompany("Manage");

请告诉我正确的方法。我想在两个类文件中都使用objprop,在class_Company.java中只使用一次,而不是像上面强调的那样使用两次。

这是您需要的基本示例:

全局变量声明:

Class variableCollection {
public static string data;
}

您可以通过扩展类或对象引用来使用这些变量

class login extends variableCollection{

}

class login{
variableCollection objvar = new variableCollection();
objvar.data = "";
}

您可以在多个类中以相同的方式使用相同的变量。

最新更新