微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Java 命令对象与方法

如何解决Java 命令对象与方法

我正在考虑我正在编写的模块的 API。我有一堆命令,每个命令都有不同的参数、模式等。例如,我可以在不同的地址模式下应用命令 (UNADDRESSED,ADDRESSED,SELECTED,...) 根据这一点,我们可能需要或不需要参数中的地址。

我想知道如何将这样的 API 公开为 Java 接口。 最后,这些命令会触发一些通过以太网连接的硬件。

目前,我有两个想法:

  1. 命令对象:void doA(CommandA c) 其中 CommandA 将所有参数/模式信息保存为字段。我现在必须检查 doA 是否是有效的参数组合。
  2. 方法重载:对于每个有效参数组合,都有一个方法,例如doA_VariantI(int param1,byte[] param2,byte[] payload,....)doA_VariantII(int param1,...)

方法重载可能是排除无效参数组合最安全的方法。但是我必须为每个命令创建 6-7 个重载(我想避免)。好处是所有参数都在堆栈上,而命令对象会产生大量垃圾

我想知道是否有人可以分享一些这方面的经验。垃圾真的值得担心吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。