추상 2

추상 팩토리 패턴

추상 팩토리 패턴 tags: Tag(GoF디자인 패턴) 서로 관련있는 여러 객체를 만들어주는 인터페이스 이걸 사용하면 어떤 클래스의 인스턴스를 사용하는지 감출 수 있다. 그래서 팩토리 메서드랑은 뭐가 다른데? 하면 사실 내부 구조는 거의 비슷한데 얘는 Client에서 정보를 숨기는데에 집중한다. (이거 후술) 해당 로직을 구현하는 Client에서 구체적인 class를 사용하는 대신, 추상화된 메서드를 통해 구현하도록 하는 것이다. 추상 팩토리 패턴 세팅 추상적인 interface를 만들어준다. -> 추상 Factory 패턴 public interface ShipPartsFactory { Anchor createAnchor(); Wheel createWheel(); }그리고 저기 Anchor, Wheel도..

이론 정리/java 2022.12.13

abstract class와 interface에 관하여

abstract class 이름에서 알 수 있듯, 추상 클래스는 선언만 하고 실제 구현부는 작성하지 않은 상태로 남겨둔 클래스이다. 추상 클래스는 다음과 같은 특징을 갖는다. new메소드를 사용하여 객체를 직접 생성할 수 없다. 구현부가 실제로 없기 때문에 자식 클래스에서 구현하게 된다. 그리고, 이 구현은 무조건 이루어져야 한다. 이 메소드 내에는 추상 메소드가 존재하며, 이 메소드를 자식 클래스에서 구현한다. 추상 클래스는 간단히 말하자면 미완성 설계도라고 생각하면 된다. 예를 들어 개, 고양이, 소, 말, 돌고래 라는 동물들이 있는 경우 추상 클래스로 동물을 선언해주면 동물이 갖는 공통의 특성을 아래에서 하나씩 사용할 수 있다. 동물(추상 클래스) 걷기 뛰기 숨쉬기 이 뛰는 방식, 걷는 방식, 숨쉬..

이론 정리/java 2022.04.06