요즘은 조금만 길거나 복잡한것은 답변하기 싫어서 간단한것만 하다보니 답변횟수가 줄었다.
마침 간단한 질문이 올라왔길래 '야호~' 하고 작성했는데, 답변이 먼저 등록되어 버려서..
질문) java 전역변수 선언및 입력 질문입니다.
public static main void () 밖에서 static int N;이라고 선언을 하고
main 함수안에서 스캐너로 입력을 받을 경우 N= sc.nextInt();
다른 메소드에서 입력받은 N을 출력하지 못하는데요
N을 입력받아서 메인 외에 다른 메소드에서 쓸수 있으려면 어떻게 해야 하나요?
먼저 등록된 답변)
안녕하세요.
import java.util.Scanner;
public class AA {
static int N;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
N = sc.nextInt();
AA a = new AA();
a.print();
}
public void print() {
System.out.println(N);
}
}
등록 못한 내답변)
소스의 출력문을 보시면 이해하실 수 있을겁니다.
아래를 참고하세요~
1. CLASS
import java.util.Scanner;
public class t04_001 {
static int N;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
N = sc.nextInt();
aa();
t04_001 b1 = new t04_001();
int bb = b1.bb();
System.out.println("여기는 bb 메소드에서 리턴받은 값 : " + bb);
b1.cc();
}
public static void aa(){
System.out.println("여기는 aa 메소드 내부 : " + N);
}
public int bb(){
return N;
}
public void cc(){
System.out.println("여기는 cc 메소드 내부 : " + N);
}
}
2. RUN
123654
여기는 aa 메소드 내부 : 123654
여기는 bb 메소드에서 리턴받은 값 : 123654
여기는 cc 메소드 내부 : 123654
'course > 지식인' 카테고리의 다른 글
[자바] 성적 출력부분 수정 요청. (0) | 2016.04.05 |
---|---|
[자바] 2개의 기간사이 년월 출력.. (0) | 2016.03.29 |
[자바] 질문자가 질문을 바꾸는 경우.. (0) | 2016.03.24 |