黑马程序员技术交流社区

标题: 在打印语句中如何打印这3个x变量? [打印本页]

作者: 沐小北    时间: 2014-7-10 12:47
标题: 在打印语句中如何打印这3个x变量?


package com.itheima;

import com.itheima.A.B;

public class Test8 {
        /**第五题
         *  在打印语句中如何打印这3个x变量?

                class A {
                    int x = 1;

                    class B {
                        int x = 2;

                        void func() {
                            int x = 3;
                            System.out.println( ? );
                        }
                    }
                }
         * @param args
         */
        public static void main(String[] args) {
                new B().func();
        }
}


class A {
    int x = 1;
    static class B {
        int x = 2;
        void func() {
            int x = 3;
            System.out.print("A.X = " + new A().x + ";  B.X = " + new B().x + ";  X

= " + x);
        }
    }
}


作者: 高老强    时间: 2014-7-17 17:40
你的B是哪里调用的?
作者: 戒风    时间: 2014-7-17 17:51
没看懂,我还没看到这里……表示进41有压力了
作者: LYP    时间: 2014-7-17 18:19
先要有A集合才能有B集合。所以主函数应该是  A  a = new A();
作者: LYP    时间: 2014-7-17 18:22
先要有A集合才能有B集合。所以主函数应该是  
A  a = new A();
A.B ab = a.new b();
然后才能调用B中的函数;
ab.func();

怎么调用X就要用到 this 等这个关键字了,自己想一下应该能想的,同学
作者: 沐小北    时间: 2014-7-17 20:31
LYP 发表于 2014-7-17 18:22
先要有A集合才能有B集合。所以主函数应该是  
A  a = new A();
A.B ab = a.new b();

謝謝,已解惑。
作者: 王石    时间: 2014-7-28 22:55
B是在那掉哟个的func

作者: liuch111    时间: 2015-7-26 11:49
学习了                  




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