자격증/정보처리기사 실기 - 기출문제
[정보처리기사 실기] 2021년 2회 17 - 프로그래밍 [JAVA]
쏠솔랄라
2025. 7. 17. 08:24
17 다음 JAVA로 구현된 프로그램을 분석하여 괄호에 들어갈 알맞은 예약어를 쓰시오.
public class Test {
public static void main(String[] args) {
System.out.print(Test.check(1));
}
( 괄호 ) String check(int num) {
return (num >= 0) ? "positive" : "negative";
}
}
답
더보기
static
해설
코드 | 실행순서 및 해석 | ||
1 | public class Test { | ||
2 | public static void main(String[] args) { | ||
3 | System.out.print(Test.check(1)); | 메소드가 포함된 클래스의 객체변수를 선언한 다음 객체변수.메서드 방식으로 접근 -> [객체변수].[메서드] |
|
4 | } | ||
5 | ( 괄호 ) String check(int num) { | ||
6 | return (num >= 0) ? "positive" : "negative"; | ||
7 | } | ||
8 | } |
Test 클래스 안에는 main() 메서드와 check() 메소드가 있다
main()은 자바프로그램의 시작점으로 반드시 static이 되어야 하며
클래스가 실행될 때 객체를 생성하지 않고 호출되므로
이 안에서 호출하는 다른 메서드도 객체 없이 호출 가능해야 한다
따라서 check() 메서드도 static으로 선언되어야 한다
(main() 메서드에서 객체 생성 없이 직접 호출하기 위해서)
+
만약 check() 메서드를 static으로 선언하지 않으면
main() 메서드에서 check()메서드를 호출하기 위해서는 아래와 같이 객체를 만들어 주어야 호출할 수 있다
public class Test {
public static void main(String[] args) {
Test t = new Test();
System.out.print(t.check(1));
}
String check(int num) {
return (num >= 0) ? "positive" : "negative";
}
}