我需要知道如何修复这些错误注释:
Note: Summer.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.下面是我的代码:
import java.util.Calendar;
import java.util.*;
class Summer
{
public static void main(String[] args)
{
Date d1 = new Date();
Date j21 = new Date(d1.getYear(), 6, 21);
if(d1.before(j21)) {
long diff = j21.getTime() - d1.getTime();
diff = diff / (1000 * 60 * 60 * 24);
System.out.println("There are " + diff + " days until June 21st" );
}
else {
long diff = d1.getTime() - j21.getTime();
diff = diff / (1000 * 60 * 60 * 24);
diff = 365 - diff;
System.out.println("There are " + diff + " days until June 21st" );
}
}
}发布于 2012-09-24 22:11:33
这不是一个错误;这是一条警告消息。
您的程序将按您编写的方式运行。
编译器给出此警告的原因是因为您使用了不推荐使用的函数调用。
通过“使用-Xlint重新编译”,编译器的意思是通知您需要像这样重新编译您的程序:
javac -Xlint abc.java 如果这样做,编译器将告诉您哪些方法已弃用,以便您可以删除对它们的调用。(如果某个方法被弃用,这通常意味着有更好的实现可用,您应该使用它而不是被弃用的方法。)
发布于 2012-09-24 10:49:43
这是个警告。您正在使用已弃用的函数调用或对象。您可以像这样重新编译,以找出它发生的位置:
javac -Xlint:deprecation Summer.java一般来说,使用被弃用的库不是一个好主意。它们可能会在下一个版本中消失。
发布于 2012-09-24 10:49:20
正如消息所说,您需要使用-Xlint命令行开关将其编译为javac命令,如下所示:
C:\Temp>javac -Xlint Summer.java
Summer.java:22: warning: [deprecation] getYear() in java.util.Date has been deprecated
Date j21 = new Date(d1.getYear(), 6, 21);
^
Summer.java:22: warning: [deprecation] Date(int,int,int) in java.util.Date has been deprecated
Date j21 = new Date(d1.getYear(), 6, 21);
^
2 warningshttps://stackoverflow.com/questions/12558231
复制相似问题