SUN CERTIFIED PROGRAMMER FOR THE JAVA 2 PLATFORM (SCJP)
![]() |
SCJP 자격증은 J2SE (Java 2 Platform, Standard Edition) 기반의 Java
Programming 언어에 대한 기본적인 지식을 기반으로 Java의 능률성을 실행하는데 관심이 있는 프로그래머들을 위한
자격증입니다.
Java 기술을 직접 개발한 썬 마이크로시스템즈에서 Java Programming 언어에 관련된 지식을
표준화된 방식으로 검증해 주는 시험이며, 또한 Java 기반의 모든 툴 개발에 필요한 기초 지식을 인정 받을 수 있는
자격증입니다. 자바 프로그래머라면 기본적으로 본 자격증을 취득하시기를 권장해 드립니다.
SCJP 1.4 (Sun Certified Programmer for the Java 2 Platform 1.4)(CX-310-035)
SCJP는 Java Programming 언어의 기본적인 syntax와 구조를 사용해 본 경험이 있는 프로그래머들에게 적합한 시험으로 자바 프로그래머라면 반드시 취득하셔야 할 기본이 되는 자격증입니다.
SCJP1.4버전 시험은 이전 버전보다 Hashcode, equals, collections등의 내용이 보다 강화되어 실제적인 시나리오와 전후 관계를 묻는 질문이 추가됨으로써 새로운 스킬 검증에 초점이 맞추어져 있습니다.
자격증 상세내용
- 시험바우처 구입: 썬 자격증 바우처 판매 업체
- 시험장소: Prometric 공인시험센터 아이티윌(SK62)
- 시험번호: CX-310-035
- 시험유형: 객관식 & 단답식
- 시험문항: 61문항
- 합 격 점: 72% (61문제 중 32문제 이상 통과)
- 시험시간: 120분
- 시험가격: USD $150 (VAT 별도)
출제경향(Exam Objectives)
Section 1: 선언과 액세스 컨트롤 (Declaration and Access Control)
선언과 초기화 모두를 위해 허용된 형식을 사용하여 기본 타입의 배열을 선언, 생성, 초기화할 수 있는 코드 작성
모
든 허용된 modifier (public, final, static, abstract 같은)를 사용하여 클래스,
중첩(nested)클래스, 메쏘드, 인스턴스 변수, Static 변수와 자동 (멤버,지역) 변수의 선언. 각각의
modifier와 결합된 modifier에 대한 중요성에 대하여 각각 설명할 수 있어야 하고, modifier들에 의하여
요구조건을 맞춘 선언된 아이템들에서 패키지 관계의 영향에 대하여 설명할 수 있어야 함.
주어진 클래스에서 초기의 생성자 (constructor)가 만들어질 것인지, 그리고 만들어진다면 생성자의 프로토타입은 어떤 것인지 설명
클래스 혹은 parent 클래스와 관련된 모든 methods를 선언하고, methods의 올바른 반환 타입 확인
Section 2: 흐름 제어, Assertions 및 예외처리 (Flow control, Assertions, and exception handling)
if문과 switch문을 사용하여 코드 작성하고 이들의 올바른 인수 타입을 확인
labeled 혹은 unlabeled를 포함하는 loops의 모든 폼을 사용하여 코드를 작성하고, break와 continue를 사용하여 loop 수행중이나 후에 loop 카운터 변수에 의하여 만들어지는 변수 설명
예외 사용에 적절한 코드와 예외처리 문(try, catch, finally) 작성 및 예외를 발생시키는(overriding)메소드 선언
코드의 일부에서 발생하는 특정 위치의 예외 영향에 대한 코드 작성: 예외는 runtime 예외, 확인된 예외, 또는 에러 (코드는 규칙적인 결합에서 try, catch, finally문이 포함됨)
Assertion 사용을 적합하게 만들어낼 수 있는 코드 작성과 잘못된 assertion 사용에서 제대로 된 assertion을 구별하기
Assertion 메커니즘에 대한 올바른 문장 확인
Section 3: 가비지 콜렉션 (Garbage Collection)
가비지 콜렉션 시스템에 의하여 보장된 행위 (behavior) 설명
가비지 콜렉션을 호출할 수 있는 객체를 명시적으로 만들 수 있는 코드 작성
가비지 콜렉션을 호출할 수 있는 객체에서 나타나는 특정한 소스 코드 검증
Section 4: 언어 기본 (Language Fundamentals)
올
바르게 구성된 패키지 선언, import 구문, 클래스 선언 (내부 클래스를 포함하는 모든 형태에 대하여), 인터페이스 선언,
methods 선언 (클래스 실행을 시작할 때 사용하는 주요 methods 포함), 변수 선언, 그리고 식별자 확인
Java.lang.Runnable의 인터페이스나 혹은 요구되는 특정 인터페이스 중에서 인터페이스를 바르게 구현하는 클래스 확인
메인 메쏘드에 포함된 인수배열에서의 인덱스 값과 명령줄의 인덱스 사이의 일치성에 대한 기술
모든 Java Programming 언어의 키워드의 확인: 키워드들과 명시된 상수 사이의 난해한 차이에 대한 문제는 없을 것이다.
명시적 선언(assignment) 없이도 변수나 배열 요소를 사용하는 것에 대한 영향 기술
모
든 가능한 포맷 원리(bases)와 설명(representations)을 사용하여 String을 위한 모든 primitive
포맷과 데이터 타입의 범위를 기술하고 모든 허용된 형식, 기본과 설명에 사용하는 String과 모든 primitive 타입을
위한 문자값을 선언
Section 5: 연산자와 할당 (Operators and Assignments)
어떤 타입, 클래스, 범위, 접근성 또는 이 모든 것들의 결합을 연산하기 위해 연산자 (할당 연산자와 사례를 포함하는)에 적용되는 결과를 결정
java.lang.String과 java.lang.Boolean, java.lang.Object에서 클래스의 합성 객체를 위해 Boolean 혹은 객체 methods를 적용한 결과를 결정
연산자 &,I,&&,II 와 알고 있는 값의 변수에 포함하는 표현식에서, 어떤 피연산자가 구해지고 표현식 값의 설명
methods내에서 변수가 되고, 할당이 수행되거나 연산이 수정되는 객체와 Primitive 값의 결과 결정
Section 6: Overloading, overriding, runtime type 그리고 객체지향(Object Orientation)
객체 지향 설계에서 캡슐화 (encapsulation)의 장점 설명 및 캡슐화 된 클래스를 정확하게 실행하는 코드 작성, 그리고 “is a”와 “has a” 사이의 관계 작성
Override된 혹은 overload된 methods, 근원이 되는 (parental) 혹은 overload된 생성자 호출을 위한 코드 작성 및 이러한 methods를 호출함으로써 얻어지는 영향 서술
보편된 top-level 클래스와 중첩(nested) 클래스를 포함하는 견고한 클래스의 예를 구성하는 코드 작성
Section 7: 쓰레드 (Thread)
java.lang.Thread와 java.lang.Runnable을 모두 사용하여 새로운 쓰레드를 시작하고, 예를 들고, 정의할 수 있는 코드 작성
실행 (execution)으로부터 쓰레드를 보안할 수 있는 환경 인식
동시에 일어나는 wait, notify, notifyAll을 사용하여 최근의 접근 문제들로부터 보안하고 쓰레드 사이의 소통을 가능케 하는 코드 작성
동시에 일어나는 wait, notify, notifyAll을 실행할 때의 쓰레드와 객체 정지 상태(locks) 사이의 상호작용 정의
Section 8: java.lang 패키지에서의 기본적인 클래스 (Fundamental classes in the java.lang package)
java.lang.Math 클래스의 다음의 methods를 사용하여 코드 작성: abs, ceil, floor, max, min, random, round, sin, cos, tan, sqrt
String 객체의 불변성이 가지는 의미 기술
Wrapper
클래스에서 적절한 선택을 포함하는 wrapper 클래스의 의미를 설명하여 특정한 요구사항을 맞추기, wrapper 클래스의 예
중 하나인 코드 일부의 실행에 따르는 결과 작성, 그리고 wrapper 클래스의 다음의 methods를 사용하여 코드 작성
(예: integer, Double 등)
- doubleValue
- floatValue
- intValue
- longValue
- parseXxx
- getXxx
- toString
- toHexString
Section 9: 콜렉션 프레임워크 (Collection Framework)
콜렉션 클래스/인터페이스를 적절히 선택하여 특정한 반응 요구사항을 맞추기
적절한 hashcode methods와 적절치 못한 hashcode methods 구현의 판별
SUN 자격검정 협력기관 http://www.itmoya.net/prom/java_main.htm
- 본원 시험실시 , 바우쳐 할인