关于Java Applet的一个小问题。为什么编译都通过了,运行是却出错呢?

代码如下:importjava.applet.*;importjava.awt.*;importjava.awt.event.*;publicclassExample12... 代码如下:
import java.applet.*;
import java.awt.*;
import
java.awt.event.*;
public class Example12_4 extends Applet
{

GridLayout grid;
public void init()
{

grid=new GridLayout(12,12);
setLayout(grid);

Label label[][]=new Label[12][12];
for(int
i=0;i<12;i++)
for(int j=0;j<=12;j++)

{
label[j]=new Label();

if((i+j)%2==0)
{

label[j].setBackground(Color.black);
}

else
{

label[j].setBackground(Color.white);
}

add(label[j]);
}

}
}
HTML文件入下:
<applet
code=Example12_4.class height=200
width=300></applet>
我保存为Example12_4.html
我已经把它们放在同一目录下面了,可是打开Example12_4.html之后,却出现这样的情况:

这是为什么呢?
展开
 我来答
316376646
2012-08-01 · 超过14用户采纳过TA的回答
知道答主
回答量:47
采纳率:0%
帮助的人:20.8万
展开全部
楼主的程序编译根本无法通过!!结果当然不对
修改如下:
import java.applet.*;
import java.awt.*;
public class MyApplet extends Applet{
/**
*
*/
private static final long serialVersionUID = 1L;
GridLayout grid;
public void init(){
grid=new GridLayout(12,12);
this.setLayout(grid);
Label label[][]=new Label[12][12];
for(int i=0;i<12;i++){
for(int j=0;j<12;j++){
label[i][j]=new Label();
if((i+j)%2==0){
label[i][j].setBackground(Color.black);
} else{
label[i][j].setBackground(Color.white);
}
add(label[i][j]);
}
}
}
}

html中修改关键代码如下:
code="MyApplet.class" height=200 width=300></applet>

这样就ok了!
追问
我按照你说的去做了,但是还是出现同样的问题!
追答

不要包(package)试试,直接放在D盘,然后用cmd进入D盘,javac MyApplet.java编译,我这边一点问题都没有,然后把class文件和html放在同一路径下,就可以了。不信?给以上张图片。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式