A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 包志恒   /  2011-7-26 19:07  /  2349 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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);
         
  }
       
}
我把我的程序简化了一下 恩错误就是 从内部类中访问局部变量要声明为最终类型 那如果不升鸣为最终类型有木有解决办法

评分

参与人数 1技术分 +2 收起 理由
admin + 2 看看童鞋们怎么回答的!

查看全部评分

3 个回复

倒序浏览
黑马网友  发表于 2011-7-26 19:10:31
沙发
:lol 别想了。没出路
回复 使用道具 举报
黑马网友  发表于 2011-7-26 19:27:01
藤椅

回复 楼主 的帖子

我在我的博客里面写得很清楚,楼主自己去看下吧

[url]http://blog.csdn.net/driverking/article/details/6553877[/url]

评分

参与人数 1技术分 +2 收起 理由
admin + 2 赞同!

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-7-27 00:34:15
板凳
请问楼主哪里嵌了内部类  只看到有class A ,Class B,Class C   里面没看到内部类
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马