gpt4 book ai didi

java - 如何根据操作系统动态继承?

转载 作者:行者123 更新时间:2023-11-30 02:00:41 27 4
gpt4 key购买 nike

我正在为两个操作系统进行开发。每个都有 BaseClass 的特定实现。我想抽象这些实现。我的想法是使用两个实现都实现的接口(interface),然后使用工厂模式返回操作系统特定的类。这看起来类似于 this .

但是,采用这种方法需要我在构建应用程序之前指定应使用哪种实现,例如通过保存操作系统名称的常量变量(链接答案中的platform变量)。对我来说这似乎是一个糟糕的设计选择。是否有另一种方法来定义要构建的操作系统?

最佳答案

你不知道。

这不是 Java 的工作方式。 Java 程序不是为特定的目标系统编译的,它们应该是可移植的并且可以在所有系统上运行。请参阅Possible to run JAR file on any OS?

如果您需要做一些真正特定于操作系统的事情,您可以使用系统属性来找出程序在运行时运行的操作系统。然后,您可以使用此信息在某种工厂中选择适当的实现,但这是运行时的决定。

查找操作系统的一些方法:How do I programmatically determine operating system in Java?

关于java - 如何根据操作系统动态继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52948408/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com