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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马薛有义   /  2011-7-26 21:36  /  3414 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class Outer{
   int i = 1;
   public void print(){
        final int i = 2;//第二个i
        class Inner(){
             int i = 3;
             public void print(){
                System.out.println();//括号里面写什么可以访问到第二个i
             }
        }
   }
}

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

6 个回复

倒序浏览
黑马网友  发表于 2011-7-26 22:02:43
沙发
这个代码报错
回复 使用道具 举报
黑马网友  发表于 2011-7-26 22:03:34
藤椅
Inner后不要加()
回复 使用道具 举报
黑马网友  发表于 2011-7-26 22:05:03
板凳
[code]public class Outer{
   int i = 1;
   public void print(){
        final int i = 2;//第二个i
        class Inner {
                 int i = 3;
             public void print(){
                System.out.println(Outer.this.i);//括号里面写什么可以访问到第二个i
             }
        }
   }
   
} [/code]

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-7-26 22:14:13
报纸
但是还有个问题,在方法的外边,是访问不了方法里定义的内部类的
回复 使用道具 举报
黑马网友  发表于 2011-7-26 22:21:48
地板
没在工具里敲代码,经常有这样的错,你贴出的代码也访问不到第二i啊???
回复 使用道具 举报
黑马网友  发表于 2011-7-26 22:41:03
7#
不可以从外部实例化这种内部类的对象,只能从方法中完成。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马