2013-11-14 2 views
2

정적 메서드에서 변수를 선언하고 초기화합니다. 이 변수를 다른 정적 메서드에서 어떻게 사용할 수 있습니까? 정적 메서드의 이름으로 변수를 호출하려고했습니다.Java의 다른 정적 메서드에서 정적 메서드 변수를 사용하는 방법?

+0

2로 설정되는 끝날 것이며, 우리는 거기에서 갈 수 있습니다. – Prateek

+0

한 메서드에서 다른 메서드에서 선언 한 변수를 사용할 수 없습니다. – async

답변

0

한 가지 방법으로 선언 할 경우이 varible 로컬이므로 전역 변수로 선언하고 메서드에서 초기화해야합니다.

4

하나의 정적 메서드에서 선언되고 초기화 된 변수를 사용하고 다른 정적 메서드에서 사용하는 방법은 무엇입니까?

수 없습니다. 변수의 범위가 선언 된 메소드에만 속하기 때문입니다.

대안으로 variable을 클래스 변수로 사용하는 경우 모든 방법에서 variable을 사용할 수 있습니다.

public class Test { 

private static int variable; 

public static void method1(){ 
    variable++; 
} 

public static void method2(){ 
    variable--; 
} 


} 

여러 스레드가 이러한 방법에 액세스 할 때주의하십시오.

+0

우리는 java에서 'global'을 모릅니다.) – Salandur

+0

@Salandur global이 (가) not-local입니다. – Cruncher

+0

지역에 거주하지 않는 것도 좋은 표현이 아닙니다. 그러나 편집 된 버전, 클래스 변수는 좋은 것입니다. – Salandur

0

변수 외부에 메서드가 있어야하며 정적으로 만들어야합니다.

예 : public static int accessMeOutside = 0;

public static void methodOne(){ 
    accessMeOutside = 1; 
} 

public static void methodTwo(){ 
    if(accessMeOutside == 1) 
     accessMeOutside = 2; 
} 

당신이 methodOne 호출하는 경우

후 methodTwo는 accessMeOutside는 제대로 시도 것을 우리에게 보여

관련 문제