Gpa*_*par 6 java program-entry-point
我在其中一个认证考试中看到了这段代码:
public class SimpleClass
{
int num;
final static void main(final String args[])
{
String s1="new";
String s2="String";
String s3="Creation";
System.out.println(s1+s2+s3);
}
}
Run Code Online (Sandbox Code Playgroud)
我知道最后的方法是无法覆盖的方法.我也知道如果方法的通常签名 main 被更改,它将被JVM视为任何其他普通方法,而不是main().
但是,给我的选项是:
1> Code won't compile
2> Code will throw an exception
3> will print newStringCreation.
Run Code Online (Sandbox Code Playgroud)
在eclipse IDE上运行此程序是不可能的.任何人都可以解释应该是什么答案,为什么?
好的,让我提出这样的问题 - 当我执行我的程序时,会发生什么?我应该选择以上3个选项中的哪一个?
Era*_*ran 10
final static void main 不会运行,因为主要不公开.
public final static void main 将工作.
至少这是我的Eclipse IDE上的行为.
小智 7
代码将编译没有任何问题,但它会抛出一个运行时异常,说"主要方法不公开".main方法必须是公共的,因为它必须由JVM调用,它不在包的范围内,因此需要访问说明符-public.如果您无法在eclipse中运行它,请尝试使用filename.java将文件保存在记事本中的古老方法.转到cmd并到达文件位置.如果在桌面上,请使用cd桌面!使用以下命令运行文件 -
javac filename.java
java filename
Run Code Online (Sandbox Code Playgroud)
您将看到我上面提到的所需的运行时异常.
| 归档时间: |
|
| 查看次数: |
12311 次 |
| 最近记录: |