查了api,说addItem()已过时被add取代,但是我尝试将一段程序中addItem换成add会出错?代码如下:import java.applet.Applet;
import java.awt.Graphics;
public class M extends Applet {
StringBuffer buffer;
public void init( ) {
buffer = new StringBuffer( );
addItem("initializing…");
}
public void start(){
addItem("starting…");
}
public void stop() {
addItem("stopping…");
}
public void destroy( ) {
addItem("preparing for unloading…");
}
void addItem(String newWord) {
System.out.println(newWord);
buffer.append(newWord);
repaint();
}
public void paint(Graphics g){
//画一个矩形作为Applet的显示区
g.drawRect(0, 0, getSize().width - 10,getSize().height - 10 );
//在这个矩形中写字符串
g.drawString(buffer.toString(), 5,15);
}
}
为什么不能替换,问题出在哪?
api是1.6.0的内容如下:
void add(String item)
向滚动列表的末尾添加指定的项。
void add(String item, int index)
向滚动列表中索引指示的位置添加指定的项。
void addItem(String item)
已过时。 由 add(String) 取代。
void addItem(String item, int index)
已过时。 由 add(String, int) 取代。
api和jdk都没问题,错误提示好像是参数类型不对应,但不知怎么改,求指点。
你看的是哪个类的API?
追问哦,我错了
它下面对addItem进行了重写,并不是api里面的方法,所以add方法无法替代,是我看得不够仔细啊,呵呵。