我需要从另一个类文件中访问变量(一个int)。我该怎么做?它是一个公共int,我需要获取int值并将其放入文件中。
答案 0 :(得分:8)
如果你有一个实例:
AnotherClass another = new AnotherClass();
然后,如果字段(实例变量)是公共的:
another.someField;
或者如果你有一个getter方法
another.getSomeField();
如果这些都不成立 - 添加一个getter方法(这是访问实例变量的首选方法)。
如果您无法更改课程 - 作为最后的手段,您可以使用reflection。
答案 1 :(得分:1)
示例:
MyClass myclass = new MyClass();
System.out.print(myclass.myint)
答案 2 :(得分:1)
最佳实践代码指出,如果变量不是静态最终变量,那么你应该创建getter&班上的人:
public class Main{
int variableName;
public int getVariableName(){
return this.variableName;
}
public setVariableName(int variableName){
this.variableName = variableName;
}
}
如果你想从另一个类文件访问它,那么你必须实例化一个Object,然后使用public方法访问它:
Main m = new Main();
int a = m.getVariableName();
希望它有所帮助。
答案 3 :(得分:0)
如果您有其他类的实例,则可以将其作为{instance} .varable。
访问可变性需要公开,或者它需要在同一个包中而不是私有包,或者它必须是超类中的受保护变量。
如果变量是静态的,那么您不需要该类的实例,您可以像{ClassName} .variable一样访问它。
答案 4 :(得分:0)
在这里做的最好的事情就是创建你需要的int来访问另一个类的Property,然后使用'getter'方法访问它。
基本上,在其他课程中,请执行以下操作:
public int Number
{
get
{
return number;
}
set
{
number = value;
}
}
private int number;
这样做可以让您在需要时轻松将其设置为其他内容,或者获取当前值。为此,请按照Bozho已经解释的那样创建“AnotherClass”的实例。