[求助]使用或覆盖了已过时的API是怎么一回事?
编译某些Java Application程序时,偶尔会遇到编译注意(或警告),注意里提示说“注意: E:\myjava\JCreator\2\ApplicationGraphicsInOut2.java 使用或覆盖了已过时的 API。”因为是“注意(或者警告)”,而不是“错误”,所以程序照样可以运行成功。
我使用的Java开发工具是JDK1.5.0版本的,程序通过在JCreator上运行,电脑系统是XP。
比如我编译运行下面这个程序:
/*======================================*/
import java.awt.*;
import java.awt.event.*;
public class ApplicationGraphicsInOut2 //主类
{
public static void main(String args[])
{
new FrameInOut(); //创建一个FrameInOut类的对象
}
}
class FrameInOut extends Frame implements ActionListener
{ //类FrameInOut用于建立和使用图形界面
Label prompt;
TextField input,output;
Button btn; //按钮(Button)的对象btn
FrameInOut()
{
super("图形界面的Java Application程序");
prompt=new Label("请输入您的名字:");
input=new TextField(8);
output=new TextField(38);
btn=new Button("关闭"); //创建关闭这个按钮
setLayout(new FlowLayout());
add(prompt);
add(input);
add(output);
add(btn);
input.addActionListener(this);
btn.addActionListener(this); //将按钮注册给动作事件的监听者
setSize(300,200);
show(); //显示出窗框
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==input)
output.setText(input.getText()+",欢迎你!");
else
{
dispose();
System.exit(0);
}
}
}
/*====================================*/
JCreator里面显示当前程序:
注意:使用或覆盖了已过时的 API。
但程序运行结果还是可以达到预期效果。
我猜想是否是我举的上面这个程序里使用了1.5.0版本以前的接口呢?若是的话,又是在哪处呢?
也许问题出现在我使用的Java软件JCreator上?不过在DOS下使用Javac命令运行此程序,也是显示同样的“注意”啊。但让这个程序在Eclipse(3.1.1版本)平台上运行却并末显示此项“注意”,结果也如JCreator上的运行结果。
我就是不清楚出现这个问题的原因是什么?也许问题没什么大不了的,但不了解清楚,心里就是觉得不畅。望有关前辈指教一下,再此先谢谢。
我原来在bc上的博客现在可以登陆了,欢迎访问,
2007.7.14. 1:40
阅读(18613) | 评论(1) | 转发(0) |