黑马程序员技术交流社区

标题: 关于内部类访问问题实在想不通 [打印本页]

作者: 包志恒    时间: 2011-7-26 19:07
标题: 关于内部类访问问题实在想不通
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseListener;
public class A
{
    C c;
        B b;
        String msg="ooo";
        JFrame jf;
        public void init()
        {
                c=new C(this);
               
                b=new B(c);
                jf=new JFrame("测试");
                jf.add(b);
                jf.pack();
                jf.setVisible(true);

        }
        public static void main(String[] args)
        {
                A a=new A();
                a.init();
               
        }
}
class B extends JPanel
{
        C c;
        // B需要调用c中的方法
        public B(C c)
        {
                this.c=c;               
                addMouseListener(new MouseAdapter()
                {
                        public void mouseClicked(MouseEvent me)
                        {
                                c.send();
                                System.out.println("");
                        }
                });
        }
       
}
class C
{
  A a;
  private String str="我在这";
  //C需要调用A中的变量
  public C(A a)
   {
          this.a=a;
        }
  public void send()
  {
         System.out.println(str+" "+a.msg);
         
  }
       
}
我把我的程序简化了一下 恩错误就是 从内部类中访问局部变量要声明为最终类型 那如果不升鸣为最终类型有木有解决办法
作者: 匿名    时间: 2011-7-26 19:10
:lol 别想了。没出路
作者: 匿名    时间: 2011-7-27 00:34
请问楼主哪里嵌了内部类  只看到有class A ,Class B,Class C   里面没看到内部类




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2