객체지향 프로그래밍 족보
- 최초 등록일
- 2024.02.17
- 최종 저작일
- 2023.08
- 9페이지/ MS 워드
- 가격 1,000원
소개글
객체지향 프로그래밍 공부할 때 받았던 족보+ 제가 복기한 내용입니다.
OOP 시험 공부 하실 때 문제 풀고 싶으시면 풀어보시면 좋아요.
목차
없음
본문내용
1. 인터페이스 코드 -> 제너릭 코드로 수정
제너릭 정의: 데이터 타입을 일반화(generalize) 하는 것을 의미
클래스나 메소드에서 사용할 내부 데이터 타입을 컴파일 시에 미리 지정하는 방법
객체의 타입 안정성을 높일 수 있음
반환값에 대한 타입 변환 및 타입 검사에 들어가는 노력을 줄일 수 있음
2. ISP 설계원칙에 맞게 인터페이스 작성 후 설명
ISP 정의: 인터페이스 분리 원칙, 객체는 자신이 사용하는 메서드에만 의존해야 한다.
interface statusCheck {
public void 출근();
public void 퇴근();
public void 휴가(String vacationDate);
public void 근무기간설정();
public void 휴가(String vacationDate);
}
interface timestatusCheck {
public void 출근();
public void 퇴근();
public void 근무일();
}
이런식으로 만들고 밑에 코드처럼 받으면 될듯?
Public class 상시근무자 implements statusCheck{
@Override
public void 출석(){…}
}
3. 클래스 구조 보고 DIP 설계원칙 해석
DIP 정의: 의존성 역전 원칙, 추상화에 의존하고 구체화에 의존하지 말기
(고수준 모듈, 인터페이스, 추상 클래스)
(저수준 모듈, 객체, 메인 클래스)
그리고 동기화요청이라는 추상적인 인터페이스(고수준 모듈)를 사용해 구체적인 통신모듈과 사용자모듈(저수준 모듈)을 구현하도록 한다. 이렇게 사용자와 통신은 이 인터페이스로 인해 특정 통신 또는 사용자에 의존하지 않게 된다.
4. 한 클래스의 인터페이스를 구현하는 코드 작성
(1) implements Clonable
(2) throws CloneNotSupportedException
(3) (ShoppingCart) super.clone()
(4) return cloned
참고 자료
없음