2016-08-13 4 views
0

Я хочу призвать все элементы а в основных и печатать переменные, которые содержитКак я могу назвать все a в основном методе?

package testj; 
class Test{ 
    int a = 3;//------------------------------- a - 3 
    String b; 
    float f; 

    Test(int a){ 
     this.a = a; 
     a = 4;//------------------------------- a - 4 
    } 
    public static void main(String[] args) { 
     int a = 1;//--------------------------- a - 1 
     System.out.println(a); 
     Test t = new Test(2);//---------------- a - 2 
     System.out.println(t.a); 
     System.out.println(); 
    } 
} 
+0

Ваш вопрос непонятен. Что вы подразумеваете под «вызовом» переменной? И чтобы напечатать переменную, вам нужно добавить оператор печати в область, где он объявлен. Некоторые из них являются локальными переменными/параметрами, поэтому они недоступны вне метода, в котором они объявлены. – RealSkeptic

ответ

0
class Test{ 
    int a = 3;//------------------------------- a - 3 
    String b; 
    float f; 

    Test(int a){ 
     System.out.println(this.a); 
     this.a = a; 
     a = 4;//------------------------------- a - 4 
     System.out.println(a); 
    } 
    public static void main(String[] args) { 
     int a = 1;//--------------------------- a - 1 
     System.out.println(a);//prints 1 
     Test t = new Test(2);//prints 3 & 4 
     System.out.println(t.a);//prints 2 
    } 
} 

Вы не можете получить прямой доступ к глобальным переменным, которые перекрыты локальным переменным.

+0

Это не то же самое, что «a» доступно через 't.a'? –

+0

@ PawełDyl, это –

+0

@ PawełDyl, спасибо за исправление, отредактировано и протестировано на этот раз. – Addis