请达人指教关于java的小问题~!~

来源:百度知道 编辑:UC知道 时间:2024/05/26 07:47:37
请问我下面的程序为什么把ButtonListener 放在外面就不行呢??
请达人指教!
import java.net.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.applet.AppletContext;
import javax.swing.event.*;

public class ShowDocument extends JApplet
{
public void init()
{
JButton goButton=new JButton("Link to www.sohu.com");
add(new JLabel("Link to SOHU"),BorderLayout.NORTH);
add(goButton,BorderLayout.SOUTH);
goButton.addActionListener(new ButtonListener());
}

class ButtonListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
try
{
URL newDocument=new URL("http://www.sohu.com");
AppletContext browser= getA

getAppletContext()这个方法是在JApplet这个类里实现的。你的写法ButtonListener这个类定义在外部的时候,是无法找到getAppletContext()这个方法的。
定义在里面的时候因为ButtonListener是ShowDocument 的内部类,而ShowDocument 继承了JApplet这个类,所以在定义在里面是没有问题的。
关于这几点,你多看看Java基础吧。
主要有3点。继承,类(所有类的类型),java访问权限(类,方法修饰符,范围等)。这些都是基础,必须掌握的。
嘿嘿,如果觉得可以的顶下。

当然不行了,你这个类不是叫ShowDocument 吗,放外边,那这个类名不就可以有两个了吗