두배로

시험 안내 › 정보처리기사 › 필기 개념서

16장. 객체지향 프로그래밍과 라이브러리

정보처리기사 필기 개념서 · 4과목. 프로그래밍 언어 활용 · 절 8개

앱에서 전체 내용 보기

이 장에서 배우는 것

16-1. 클래스·객체·생성자

다루는 항목: 클래스, 객체(인스턴스), 생성자, this / this(), super / super(), 메시지

16-2. 상속과 오버라이딩 — 생성자 호출 순서

상속: 부모(상위·슈퍼) 클래스의 속성과 메서드를 자식(하위·서브) 클래스가 물려받는다. Java는 extends(클래스는 단일 상속만), Python은 class Dog(Animal): (다중 상속 가능)

16-3. 오버로딩 vs 오버라이딩

호출 시 인자의 개수·자료형으로 실행할 메서드가 결정된다: add(1, 2)는 int 버전(3), add(1.5, 2.0)은 double 버전(3.5), add(1, 2, 3)은 매개변수 3개 버전(6)

16-4. 추상 클래스와 인터페이스

추상 메서드는 몸체 없이 선언만 있는 메서드이며, 이를 상속한 자식 클래스는 반드시 구현(오버라이딩)해야 한다

16-5. static — 클래스 변수와 클래스 메서드

static 변수(클래스 변수)는 모든 객체가 하나를 공유하며 객체 생성 없이 클래스명.변수로 접근한다. 일반 필드(인스턴스 변수)는 객체마다 따로 존재

16-6. 예외 처리

예외(Exception): 실행 중 발생하는 오류 상황. try에서 예외가 발생하면 나머지 문장을 건너뛰고 일치하는 catch로 이동, finally는 예외 여부와 관계없이 항상 실행

16-7. Python 클래스와 예외

생성자는 __init__(self,...), 첫 매개변수 self가 객체 자신. 클래스 본문에 둔 변수는 모든 객체가 공유하는 클래스 변수

16-8. Java·Python 라이브러리 기초

indexOf는 처음 나타나는 위치(0부터), substring(6)은 6번 인덱스부터 끝까지. Math.pow는 double을 돌려준다. HashMap은 같은 키에 다시 넣으면 값을 덮어쓴다

그림·예제·문제와 함께 이어 보기