gpt4 book ai didi

Java编译时接口(interface)变化

转载 作者:太空宇宙 更新时间:2023-11-03 13:30:35 26 4
gpt4 key购买 nike

我是 Java 新手,继承了现有的 Android 应用程序。原始开发人员选择使用常量接口(interface)。

我的问题是我需要更改其中一些常量来编译生产应用程序与开发应用程序。如果我手动修改一些值,一切都会很好,但这只是一种丑陋的处理方式,我可能有一天会犯错误。

因此,我的目标是找到一种对其余代码透明的解决方案,并使用单个常量在开发和生产之间来回切换。

现有代码示例:

package package.common;
public interface Consts {

// Define the Build Type
boolean PRODUCTION_BUILD = false;

String BASE_URL = "https://domain.com/Dev/Mobile.ashx";

interface RSA {
String PUBLIC_KEY_SHA1 = "....";
}

}

像这样使用

import package.common.Consts;

public class HttpsConn extends NetConnection {

String url = Consts.BASE_URL;

}

有没有办法在编译时使用 CONSTANT 来修改这个接口(interface)?还是我必须硬着头皮修改使用此接口(interface)的代码作为解决方案的一部分?

最佳答案

不,但是你可以在 Consts 中写这个

boolean PRODUCTION_BUILD = false;
String BASE_URL = PRODUCTION_BUILD ? "..." : "...";

关于Java编译时接口(interface)变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13905066/

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