Ich habe Helper-Klasse mit dieser statischen Variable, die für die Weitergabe von Daten zwischen zwei Klassen verwendet wird.statische Variable verliert ihren Wert
public class Helper{
public static String paramDriveMod;//this is the static variable in first calss
}
diese Variablen in folgenden zweite Klasse verwendet werden mathod
public void USB_HandleMessage(char []USB_RXBuffer){
int type=USB_RXBuffer[2];
MESSAGES ms=MESSAGES.values()[type];
switch(ms){
case READ_PARAMETER_VALUE: // read parameter values
switch(prm){
case PARAMETER_DRIVE_MODE: // paramet drive mode
Helper.paramDriveMod =(Integer.toString(((USB_RXBuffer[4]<< 8)&0xff00)));
System.out.println(Helper.paramDriveMod+"drive mode is selectd ");
//here it shows the value that I need...........
}
}
//let say end switch and method
}
und das folgende ist eine dritte Klasse-Methode die obige Klassenmethode verwendet
public void buttonSwitch(int value) throws InterruptedException{
boolean bool=true;
int c=0;
int delay=(int) Math.random();
while(bool){
int param=3;
PARAMETERS prm=PARAMETERS.values()[param];
switch(value){
case 0:
value=1;
while(c<5){
Thread.sleep(delay);
protocol.onSending(3,prm.PARAMETER_DRIVE_MODE.ordinal(),dataToRead,dataToRead.length);//read drive mode
System.out.println(Helper.paramDriveMod+" drive mode is ..........in wile loop");//here it shows null value
}
//break; ?
}
}
//let say end switch and method
}
was dass dieser Variable der Grund ist, seinen Wert verlieren?
Dies ist kein gültiger Java-Code; Kannst du es bitte reparieren, um die richtigen Methoden zu haben? – templatetypedef
Wenn du sagst verlieren; Wird paramDriveMod '0' oder leer? – trojanfoe
Es zeigt Nullwert – user542719