使用或覆盖了已过时的API

正在自学JAVA,用的教材是2000年出版的,所以JDK版本低,但是我当前使用的JDK为1.6,所以麻烦大师帮忙看下下段代码是否有问题,编译时出现: 使用或覆盖了已过时的API,代码如下:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import MyWindowListener;

public class MyFrame extends JFrame{
Container c;
String closeOperationName[]=

{"WindowConstants.DO_NOTHING_ON_CLOSE","WindowConstants.HIDE_ON_CLOSE","WindowConstants.DISPOSE_ON_CLOSE"};
public MyFrame(){
super("MyFrame.java.JFrame测试");
c=getContentPane();
setSize(450,140);
show();
}
public void paint(Graphics g){
g.setFont(new Font("Serif",Font.BOLD,14));
g.drawString("JFrame"+paramString(),10,50);
g.drawString("Container:"+c.toString(),10,80);
g.drawString("Close Operation"+closeOperationName[getDefaultCloseOperation()],10,110);
}
public static void main(String args[]){
MyFrame app=new MyFrame();
app.addWindowListener(new MyWindowListener());
}
}

// 以上是教材里的代码,因为是新手,不知道是代码还是JKD版本问题,还没学过WindowListener侦听器类,如果是 JDK版本问题,能不能提供个可以取代 import MyWindowListener的函数,来使得程序正常运行。因为学到这,卡在这个API问题上,麻烦大师帮帮忙!!十分感谢!
提这个问题原因是:
对 WindowListener这个类不熟悉,所以想学下它,以及它的方法。同时,如果可以的话,再学下1.6以后 代替这个类的那个类。
而且,以上代码具体是那个API过时,麻烦指出下

toLocaleString()
已过时。 从 JDK 1.1 开始,由 DateFormat.format(Date date) 取代。

DateFormat 是一个抽象类,可以用它的子类SimpleDateFormat实例化
构造方法摘要
SimpleDateFormat()
用默认的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
SimpleDateFormat(String pattern)
用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
SimpleDateFormat(String pattern, DateFormatSymbols formatSymbols)
用给定的模式和日期符号构造 SimpleDateFormat。
SimpleDateFormat(String pattern, Locale locale)
用给定的模式和给定语言环境的默认日期格式符号构造 SimpleDateFormat。追问

你好,以上代码好像没用到toLocalString()吧,具体是哪里? 我主要是想学下,WindowListener这个类,以及它的方法 addWindowListener(new MyWindowListener()); ,所以请教下

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-08-04
使用了过时的API,不代表有语法错误,一样可以运行的,

android出现注: 某些输入文件使用或覆盖了已过时API
在使用 Android Studio 打包应用程序时,若遇到“注:某些输入文件使用或覆盖了已过时的 API”与“注:某些输入文件使用了未经检查或不安全的操作”的错误提示,需进行针对性处理。“已过时的 API”提示意味着代码中使用了已废弃的 API。要解决此问题,需使用 -Xlint:deprecation 参数重新编译代码。这将...

java:使用或覆盖了已过时的 API,使用了未经检查或不安全的操作
解决使用或覆盖已过时API的问题,可以通过在类或方法上添加`@SuppressWarnings`注解来实现。例如,如果某个API已经被标记为过时,你可以在使用该API的类或方法上添加`@SuppressWarnings("Deprecation")`注解。这将告诉编译器忽略该警告,但同时也提醒开发者注意API的过时状态。对于具体问题,例如在处理JSON数...

JAVA使用或覆盖了已过时的 API
部分API之所以会过时,是因为该API有BUG或者是有更好的API代替。过时的API你可以到JDK的API文档去查询,过时的一般用删除线划掉的。过时的API一般都有另外的API来代替,具体用什么代替由于没有确切的例子,需要你自己去API文档去查。由四方面组成:(1)Java编程语言。(2)Java类文件格式。(3)Java虚...

文件使用或覆盖了已过时的 API
1.在在Module的build.gradle中,android节点下,配置如下信息:2.编译后会提醒显示错误 过期API有如下几种情况:

Student.java 使用或覆盖了已过时的 API。
}catch (Exception e){System.out.println(e.toString());}return "ok";}public static void main(String args[]){String s=newStudent();Student FRWC=new Student();FRWC.newStudent();}}来个高手帮帮忙哈```注意:Student.java 使用或覆盖了已过时的 API。注意:要了解详细信息,请使用 -...

java编译时提示:使用或覆盖了已过时的API
我的JDK是1.5,在JCreator上运行,提示错误信息是:……使用或覆盖了已过时的API。请问如何解决呢?谢谢了原来的代码如下:import java.awt.* import javax.swing.*; class HelloButton { public static void main (String[] args) { JFrame frame ... 展开 oa...

java编译时提示:使用或覆盖了已过时的API
这是因为你用的JAVA版本是新的,而所从API中引入的类是属于“遗产类”,也就是说你所引入的类是属于Java原来旧版本中的,现在的新版本已经有另一种类的更新将其替代,但功能完全能够实现,只是JAVA的一种进步。有时候Java新版本是兼容“遗产类”的,不过Java提倡如果使用的是新版本就引用新API中的类...

注意PrintDate.java使用或覆盖已过时的API
如果不影响程序执行,可以接着用,但建议使用替代该过时方法的方法!具体可以查API,如果某方法过时,API中会给出说明,并提示新方法予以替代)”你使用的Date类的toLocaleString()方法已过时,由 DateFormat.format(Date date) 取代。你可以查看api, 不过方法虽然已被取代,但还是可以得到正确的日期的。

使用或覆盖了已过时的 API...程序怎么改?
已过时。 从 JDK 1.1 开始,由 DateFormat.format(Date date) 取代。DateFormat 是一个抽象类,可以用它的子类SimpleDateFormat实例化 构造方法摘要 SimpleDateFormat()用默认的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。SimpleDateFormat(String pattern)用给定的模式和默认语言环境的日期格式...

运行java程序说使用或覆盖了已过时的APT,使用-Xlint:deprecation重新编译...
辨别过时API方法:一是看API文档中是不是明确说了是已过时的,或者看JDK源代码中标注@Deprecated 的。如果你使用Eclipse进行开发那就更简单了,当你使用过时的方法或类时,Eclipse会自动给该方法加上删除线,很显眼的。这类方法只是不推荐使用,并不是不能使用,如果能找到更好的替代方法的话还是不用这...

相似回答