1
프로젝트 작업 중 문제가 발생했습니다. 클래스간에 업데이트 된 데이터를 공유하는 가장 좋은 방법을 모르겠습니다. 현재이 방법은 내 클래스의 정적 인스턴스를 사용하고 다른 모든 클래스를 원래 클래스가 아닌 인스턴스를 변경하는 것입니다.Java에서 클래스간에 업데이트 된 데이터를 공유하는 가장 좋은 방법
public class A{
public static volatile instance;
public B b = new B();
public C c = new C();
public D d = new D();
public A(){
this.instance = this;
b.changeData();
}
}
public class B{
public void changeData(){
A.instance.d.changeSomethingInD();
}
}
D가 변수에 수행 한 모든 변경 사항에 B와 C가 액세스 할 수 있습니다. 더 나은 방법이 있나요?
편집 1 : 문제는 다른 모든 클래스에 액세스 할 수있는 변수를 업데이트하는 것입니다.
public class MainClass extends JavaPlugin{
private RegionLoader rLoader;
private ClassesLoader cLoader;
private MessageHandler mHandler;
private PlayerDates pDates;
public MainClass(){
dirMaker();
mHandler = new MessageHandler(this);
pDates = new PlayerDates(this);
cLoader = new ClassesLoader(this);
rLoader = new RegionLoader(this);
}
//getters and setters
}
그러나 자체 내에서 somithing RegionLoader 변경되면 ClassesLoader 업데이트 된 변수가되지 않습니다 및 이전 내용과 함께 작동하는 경우 문제가, 또는 것 : 이것은 내가 전에 무엇을하고 있었는지입니까?
사용 사례가 무엇인지 자세히 설명해 주실 수 있습니까? 방법이 많이 있습니다, 현재 하나가 최악입니다. – Alistair
해결하려는 실제 문제를 기술하십시오. 지금까지 시도한 솔루션에 문제가 있습니다. –
더 나은 설명을 위해 질문을 편집했습니다. – gkovalechyn