Chinaunix首页 | 论坛 | 博客
  • 博客访问: 367924
  • 博文数量: 70
  • 博客积分: 1837
  • 博客等级: 上尉
  • 技术积分: 670
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-02 00:05
文章分类

全部博文(70)

文章存档

2013年(6)

2012年(4)

2011年(14)

2010年(5)

2009年(12)

2008年(8)

2007年(21)

分类: Java

2007-07-13 23:32:30

[求助]使用或覆盖了已过时的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
 
阅读(18508) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2008-08-19 16:31:56

show(); //过时的方法,改为setVisible(true);就行了