相关疑难解决方法(0)

"导入"后的"静态"修饰符是什么意思?

当像这样使用时:

import static com.showboy.Myclass;

public class Anotherclass{}
Run Code Online (Sandbox Code Playgroud)

import static com.showboy.Myclass和之间有什么区别import com.showboy.Myclass

java modifier static-import

427
推荐指数
6
解决办法
14万
查看次数

Java枚举与具有公共静态最终字段的类相比有什么优势?

我对C#非常熟悉,但开始在Java中工作更多.我希望得知Java中的枚举基本上与C#中的枚举相同,但显然情况并非如此.最初,我很高兴得知Java枚举可能包含多个数据,这似乎非常有利(http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html).但是,从那时起我发现C#中缺少许多功能,例如能够轻松地为枚举元素分配特定值,以及因此无需花费大量精力就能将整数转换为枚举(即整数值转换为相匹配的Java枚举).

所以我的问题是:对于带有一堆公共静态最终字段的类,Java枚举是否有任何好处?或者它只提供更紧凑的语法?

编辑:让我更清楚.Java枚举对于具有相同类型的一组公共静态最终字段类有什么好处?例如,在第一个链接的行星示例中,枚举对具有这些公共常量的类有什么好处:

public static final Planet MERCURY = new Planet(3.303e+23, 2.4397e6);
public static final Planet VENUS = new Planet(4.869e+24, 6.0518e6);
public static final Planet EARTH = new Planet(5.976e+24, 6.37814e6);
public static final Planet MARS = new Planet(6.421e+23, 3.3972e6);
public static final Planet JUPITER = new Planet(1.9e+27, 7.1492e7);
public static final Planet SATURN = new Planet(5.688e+26, 6.0268e7);
public static final Planet URANUS = new Planet(8.686e+25, 2.5559e7);
public static final Planet NEPTUNE = …
Run Code Online (Sandbox Code Playgroud)

java enums

134
推荐指数
10
解决办法
11万
查看次数

如何在Java中提供预处理程序指令

如何在Java中正确地从C#中提供以下功能?

[C#]

#define PRODUCTION //Change from sandbox to production to switch between both systems.

#if SANDBOX
    using NetSuite.com.netsuite.sandbox.webservices;
#endif

#if PRODUCTION
    using NetSuite.com.netsuite.webservices;
#endif
Run Code Online (Sandbox Code Playgroud)

java preprocessor-directive

24
推荐指数
2
解决办法
3万
查看次数

相当于Java中的#define?

我正在编写一个库,如果包含特定的库,需要有一些代码.由于此代码分散在项目周围,如果用户不必自己评论/取消注释,那将是很好的.

在C中,这很容易用#define一个标题,然后是包围的代码块#ifdefs.当然,Java没有C预处理器......

为了澄清 - 我将分发几个外部库.我不想将它们全部包含在内以最小化我的可执行文件大小.如果开发人员确实包含了库,我需要能够使用它,如果没有,那么它就可以被忽略.

在Java中执行此操作的最佳方法是什么?

java preprocessor c-preprocessor

9
推荐指数
3
解决办法
3万
查看次数