2025/07 2

[정처기] 중요! 자바 문제 | 자바 생성자, 변수 초기화 시점

정처기 실기를 준비하면서 겉핥기식으로 알고 있던 자바에 대해 조금 더 깊게 알게 되었는데, 그중 헷갈렸던 자바 문제를 보면서 초기화 시점을 정리해 보았다. 이 문제의 답이 무엇일까? 여기에서 알고 있어야 하는 것은 두 가지이다. 1. 부모 클래스에서 메서드를 호출할 때 오버라이딩 한 메서드가 자식 클래스에 있다면 부모 클래스가 아닌 자식 클래스의 메서드가 호출된다는 것. 2. 부모 클래스에서 메서드를 호출했을 때, 자식 클래스 변수의 값이 호출된다면 아직 초기화가 되지 않아 기본값인 0이 출력된다는 것. 여기에서는 두 번째인 초기화 순서에 대해 조금 더 정리할 것이다. 🔷 Java 객체 생성 시 초기화 순서new Child(); 라고 객체를 생성하면, JVM은 다음 순서로 초기화 및 실행을 하게 된다..

지식 2025.07.29

11개 디자인패턴 자세히 알아보기

Strategy (전략) 패턴[상황] 과일 매장에서 상황에 따라 다른 가격 할인 정책을 적용할 때, 가격을 계산하는 모듈에 가격 할인 정책을 적용하기 위해 if-else 블록을 추가하게 됨 [문제] 서로 다른 계산 정책들이 한 코드에 섞여 있어, 정책이 추가될수록 코드 분석을 어렵게 함 가격 할인 알고리즘(계산 방법)을 추상화한 것을 Strategy(전략), 가격 계산 기능 자체의 책임을 갖고 있는 것을 Context(콘텍스트)라고 부르는데, 이렇게 특정 콘텍스트에서 알고리즘(전략)을 별도로 분리하는 설계 방법이 전략 패턴전략 객체는 콘텍스트를 사용하는 클라이언트에서 직접 생성 [장점] 콘텍스트 코드의 변경 없이 새로운 전략을 추가할 수 있음, 할인 정책 확장에는 열려 있고 변경에는 닫혀 있으므로 개방 ..

지식 2025.07.09