我想问些让我感到困惑的事情。在这种情况下,可以说我有一个方法preparePayload
,该方法带有一些类似的参数messageType
,destAddr
等等。方法的职责是构造一个完整的有效负载(带有标题,前缀等)。这是问题所在,我想回报statusCode
(这是枚举,像STATUS_OK
,STATUS_INVALID_DEST
,STATUS_INVALID_MSG_TYPE
等等),而且比对于返回状态我想实现我的逻辑。但是,如果没有错误(STATUS_OK
),则需要准备好的有效负载继续前进。因此,我的方法应返回Auger有效负载或状态代码。
在C语言中,只需将有效负载缓冲区地址作为参数发送给preparePayload方法即可完美解决此问题。当方法返回时,只需从缓冲区地址中读取有效负载并继续运行应用程序即可。如何在Java中实现这种逻辑?
此外,preparePayload
方法只是我提供的一个示例,因此实现的方法可能返回String
,,int[]
我编写的某些类对象等。我的意思是,成功情况下方法应返回的对象的类型可能会有所不同。
任何建议将非常欢迎。
除了更改为异常之外,还有另一种允许“输入/输出”参数的方法,例如:
public ResultEnum preparePayLoad(List<PayLoad> toPrepare, ... other args) {
...
PayLoad newThing = ...
...
toPrepare.add(newThing);
return someEnum;
}
因此,您可以使用这种方法来“模仿”“ C风格”;但是更多的Java / OO将会是
public PayLoad preparePayLoad(args) {
...
PayLoad newThing = ...
...
return newThing;
}
并为错误情况抛出(选中或未选中)异常。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句