java中写Applet小程序的问题,使用Eclipse集成开发工具.程序没有错误,可以运行,但是在public class 后面的类名有下划线,显示一个警告,“The serializable class Myplayer does not declare a static final serialVersionUID field of type long”.
部分代码:
import java.awt.*;
import java.applet.*;
public class Myplayer extends Applet{
String file="不可一世.au";
AudioClip clip;
Button b1,b2,b3;
Choice choice=new Choice();
public void init(){
setSize(400,50);
choice.add(file); //设置可拉框,显示当前播放的歌名
add(choice);
b1=new Button("start"); //设置三个按钮,分别为start,loop,stop.
b2=new Button("loop");
b3=new Button("stop");
add(b1);
add(b2);
add(b3);
clip=this.getAudioClip(getDocumentBase(),file);//取得声音文件
}
这到底是什么意思,怎么可以解决.?
人气:289 ℃ 时间:2020-03-28 06:57:32
解答
这个警告是提示你要实现序列化.Applet需要在网络上进行传输(对象会离开内存),所以需要实现序列化,以便用户在接收时通过反序列化就可以将你传输的对象重新在内存中还原.请问怎样才能实现序列化???Applet的父类public abstract class Component implements ImageObserver, MenuContainer, Serializable{已经实现过序列化Serializable了,这里只是需要一个对象的标识,public class Myplayer extends Applet{private static final long serialVersionUID = 1L; //这个是缺省的或者 private static final long serialVersionUID = -8534844170998963067L; //自动生成的。这两句随便写一个都行或者@SuppressWarnings("serial")public class AudioApplet extends Applet{不要写个注解忽略这个警告
推荐
猜你喜欢
- 一个长方体游泳池长25米,宽20米,2米.游泳池内水深2米,这个游泳池一共盛水多少立方米
- 多项式除以多项式法则内容是什么
- 我们非常喜欢学校的这次郊游 翻译成英文
- 2013年英语八年级1至3单元试题
- there were a lot of birds here in the p----,but now there are only a few ,补全单词
- 设a,b是一个直角三角形两条直角边的长,且(a2+b2)(a2+b2-20)=384,则这个直角三角形的斜边长为
- 自动扶梯上站着一个人,挡自动扶梯以加速度a斜向上运动时,为什么受向右的摩擦力?
- Fe2(so4)3和naoh的离子方程式