Как получить доступ к методу (значению), вложенному в открытый статический класс - PullRequest
0 голосов
/ 25 апреля 2019

Как получить доступ / получить строковые возвращаемые значения открытого статического метода, вложенного в открытый статический класс?Я хочу отобразить строку на экране.

Я пытался использовать частные переменные StringProperty, чтобы setDataString () возвращал значения метода, как показано во фрагменте кода ниже.

Метод с именем "byteToHex (buffer)" - это метод, к возвращаемому значению которого я пытаюсь получить доступ.

public static class SerialPortReader implements SerialPortEventListener
{
      final public static char COMMA = ',';
      final public static String COMMA_STR = ",";
      final public static char ESCAPE_CHAR = '\\';

    @Override
    public void serialEvent(SerialPortEvent event) 
    {
        if(event.isRXCHAR() && event.getEventValue() > 0)
        {
            try {
                    byte buffer[] = serialPort.readBytes();

                    byteToHex(buffer);

                    TransCeiveSerialData dataString = new TransCeiveSerialData();
                    dataString.setDataString(byteToHex(buffer));    
        /*
         * wait some milliseconds before sending next data package to avoid data losses
         */     
                    try {
                        Thread.sleep(100);
                    }catch(InterruptedException ie) 
                    {
                        Logger.getLogger(TransCeiveSerialData.class.getName()).log(Level.SEVERE, null, ie);
                    }
            }
            catch(SerialPortException spe) {System.out.println("Error in port listener: "  + spe);}
        }           
    }
}


    public static String byteToHex(byte x[])
    {
        StringBuffer retString = new StringBuffer();

        for(int i = 0; i < x.length; ++i)
        {
            retString.append(Integer.toHexString(0x0100 + (x[i] & 0x00FF)).substring(1));
        }
        return retString.toString();
    }

Использование для примера System.out.println("Received data: " + instanceOfClass.getDataString()); inвнешний класс, чтобы получить возвращаемую строку метода, я получаю «ноль».Но я ожидаю получить 31323334353637380d0a.

Я также пытался связать значения, но безуспешно.

Возможно, у вас есть идеи, как я могу решить эту проблему?Ваша помощь будет очень признательна.

Заранее большое спасибо!

AvJoe

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...