输出结果是什么public class Example{
int x = 12;
public void method(int x){
x += x;
System.out.println(x);
}
public static void mian(String[] args){
Example t = new Example();
t.method(5);
}
}

解决方案 »

  1.   

    没有main方法,运行不了。成员变量被局部变量隐藏了。
      

  2.   

    mian        main
    12        被           5覆盖。
    结果:10
      

  3.   

    mian        main
    12        被           5覆盖。
    结果:10
      

  4.   

    public static void mian(String[] args){         
    Example t = new Example();         
    t.method(5);     
    } 写错了吧,main
      

  5.   

    你这int x = 12;很明显是成员变量,使用时最好前面加上this,method方法体中x指示不明,按照局部作用域优先,int x = 12应该是被int x = 5覆盖了.因此method方法体中x都指的是参数int x = 5;
      

  6.   

    x:指的是局部变量x
    this.x:是成员变量x
      

  7.   

    你的main()方法的main打错了,运行后是:
    public class Example
    {
    int x = 12;
     public static void main(String[] args)
     {
            Example t = new Example();
            t.method(5);

        }
        
        public void method(int x)
        {
            x += x; //5+5=10 局部变量覆盖了成员变量
            System.out.println(x);//输出10
        }
       
    }
      

  8.   

    10,int x = 12是成员变量,被method方法中的int x隐藏了
      

  9.   

    很多人喜欢这样写mian().............
      

  10.   

    呵呵,main方法写错了,是 10 哈,怎么了么
      

  11.   

    public class Example {
    int x = 12; public void method(int x) {
    x += x;
    System.out.println(x);
    } public static void main(String[] args) {
    Example t = new Example();
    t.method(5);
    }
    }
    5+5=10
      

  12.   

    局部变量和成员变量同名的时候要用成员变量的话用this.来调用直接x就是调局部变量
      

  13.   

    父类的成员变量会被子类的同名成员变量隐藏,类的成员变量会被局部变量隐藏,当这三者变量都相同,并且都能访问到时,分别是:super.x、this.x、x
      

  14.   


    X += X; x=5-->x = X+5-->
    x= 5+ 5,x = 10
      

  15.   

    x+=x 就是x=x+x 等于10   是吧!初学者我
      

  16.   

    楼主。学会用快捷键啊,像这样的mian写错的方式根本就不会出现