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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张昶 中级黑马   /  2013-12-21 20:41  /  882 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class A {
    int x = 1;
    class B {
        int x = 2;
        void func() {
            int x = 3;
            System.out.println( ? );
        }
    }
}

在问号处,怎么输出三个X的值?求解???

6 个回复

倒序浏览
package test;
class A {
    int x = 1;
    class B
    {
        int x = 2;
        void func() {
            int x = 3;
            System.out.println( x+"_"+this.x+"_"+A.this.x );
        }
    }
    public void method(){
            B b=new B();
            b.func();
    }
}
public class ABC {
        public static void main(String[] args) {
                        A a=new A();
                        a.method();
               
        }
}

评分

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

查看全部评分

回复 使用道具 举报
你做过这一题了????
回复 使用道具 举报
  1. class A {
  2.     int x = 1;
  3.     class B {
  4.         int x = 2;
  5.         void func() {
  6.             int x = 3;
  7.             System.out.println( "func:"+x+" B:"+this.x+" A:"+new A().x);
  8.         }
  9.     }
  10. }
复制代码

代码是这样的,看看
回复 使用道具 举报
谢谢哈!
回复 使用道具 举报
没做过,就是看毕老师视频理解的,O(∩_∩)O~
回复 使用道具 举报
张昶 中级黑马 2013-12-23 12:45:01
7#
哦,我刚复习,想起来了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马