如何解决我的带有 final 关键字的 java 代码有错误
// final keyword usage
package workarea;
final class demo {
final int x=10;
////compile time exception here because ‘x’ is final type
System.out.println("hello modified x value is:"+ x);
final void m1()
{
int x=2;
System.out.println("hello modified x value is:"+x);
}
void m2()
{
System.out.println("hello modified m2 x value is:"+x);
}
public static void main(String abc[])
{
demo df=new demo();
System.out.println("welcome");
df.m1();
df.m2();
}
}
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
at workarea.demo.main(demo.java:24)
解决方法
对于编译时异常,最好使用任何 Java IDE 的 -Eclipse、STS、Netbeans 和 IntelliJ 创建并运行程序以进行早期编译检测。
在上面的代码中,打印语句System.out.println("hello modified x value is:"+ x);
应该在块或方法中。
您在这里面临的问题是您试图在没有方法或实例初始化程序的情况下纯粹在类主体中编写语句。在 Java 中你不能这样做。 因此,请在方法或实例初始化程序中包含以下语句。
System.out.println("hello modified x value is:"+ x);
备选方案 1(使用方法):
public void sampleMethod(){
System.out.println("hello modified x value is:"+ x);
}
备选方案 2(使用实例初始值设定项):
{
System.out.println("hello modified x value is:"+ x);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。