如何访问嵌套在公共静态类中的方法(值)

时间:2019-04-25 10:20:41

标签: javafx

如何访问/获取嵌套在公共静态类中的公共静态方法的字符串返回值? 我想在屏幕上显示字符串。

我尝试使用私有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()); 来获取方法的返回字符串,我得到一个“空”。但我希望能获得31323334353637637380d0a。

我也尝试绑定值,但没有成功。

您可能对我如何解决此问题有任何想法?非常感谢您的帮助。

非常感谢!

AvJoe

0 个答案:

没有答案