자격증/정보처리기사 실기 - 기출문제

[정보처리기사 실기] 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";
    }
}