黑马程序员技术交流社区

标题: 内部类定义在函数中时,调用的问题 [打印本页]

作者: 蒋昌宏    时间: 2012-3-3 23:47
标题: 内部类定义在函数中时,调用的问题
class cic//内部类定义在成员函数中
{
        int num =7;
        public void innerclass()
        {
                int num =8;
                class ic
                {
                        int num=9;
                        public void print()
                        {
                                int num=99;
                        System.out.println(???);       
                        }
                }
                ic i = new ic();
                i.print();
        }
}

假如我想打印8,System.out.println(???);怎么填
作者: 王睿    时间: 2012-3-4 11:50
内部类调用局部变量要在前面加上final,   然后把int num = 99 ;去掉。   

final int num = 8;
。。。
System.out.println(num);
  1. class Cic//内部类定义在成员函数中
  2. {
  3.         int num =7;
  4.         public void innerclass()
  5.         {
  6.                final int num =8;
  7.                 class Ic
  8.                 {     
  9.                     public void print()
  10.                     {
  11.                        
  12.                        System.out.println(num);        
  13.                     }
  14.                 }
  15.                 Ic i = new Ic();
  16.                 i.print();
  17.         }       
  18.         
  19.         public static void main(String[] args) {
  20.                 Cic haha = new Cic();
  21.                 haha.innerclass();
  22.                                
  23.         }
  24. }
复制代码





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