我正在使用oscP5库进行处理。我已经在javadoc中查找了oscP5,我已经浏览了源代码,但我找不到它。
当我得到这样的调试信息:###新客户端@ netP5.TcpClient@2515
2515代表什么?我知道这不是客户端使用的端口。这是客户唯一的身份证明吗?它是我可以在TcpClient类中访问的变量吗?
谢谢。
发布于 2011-04-06 13:22:14
它是内存中的对象(TcpClient)地址。您可以在src/netP5 5/acuactTcpServer.java上找到源代码。
TcpClient t = new TcpClient(this, _myServerSocket.accept(),
_myTcpPacketListener, _myPort, _myMode);
if (NetP5.DEBUG) {
System.out.println("### new Client @ " + t);
}这意味着您的数字是TcpClient的字符串表示形式。因为没有实现任何返回这个-它的默认行为:对象地址。您可以访问这个TcpClient对象及其成员,如下面的示例所示。为了简单起见,我假设我们查看客户端列表中的第一个对象。
if (oscP5tcpServer.tcpServer().getClients().length>0) {
TcpClient tcpClient = (TcpClient)oscP5tcpServer.tcpServer().getClient(0);
print (tcpClient); // address - same as your printed output
print (tcpClient.netAddress()); // string with "ip:port"
print (tcpClient.socket()); // Socket object
}请注意,大多数有趣的信息都包含在基本对象AbstractTcpClient中(如示例所示)。
https://stackoverflow.com/questions/5566285
复制相似问题