728x90 패턴매칭4 [JAVA] Sealed Classes : 상속의 경계를 정의하는 새로운 패러다임 객체 지향 프로그래밍(OOP)의 핵심 원칙 중 하나는 '상속'입니다. 하지만 자유로운 상속이 언제나 정답은 아닙니다. 때로는 설계자가 의도한 클래스들만 특정 클래스를 확장할 수 있도록 제한해야 할 필요가 있습니다. 이전까지 자바에서는 이를 구현하기 위해 final 키워드로 상속을 완전히 막거나, 패키지 프라이빗(package-private) 생성자를 사용하는 등 우회적인 방법을 사용해야 했습니다. Java 17에서 정식 도입된 Sealed Classes(봉인된 클래스)는 이러한 설계상의 제약을 언어 차원에서 우아하게 해결합니다. 본 포스팅에서는 Sealed Classes의 개념부터 실무 활용법, 그리고 왜 이것이 현대 자바 설계의 필수 요소가 되었는지 심도 있게 살펴보겠습니다.1. Sealed Class.. 2026. 1. 24. [JAVA] instanceof 연산자의 심층 이해와 객체 지향적 설계 패턴 자바 프로그래밍을 하다 보면 런타임 시점에 객체의 실제 타입을 확인해야 하는 순간이 옵니다. 이때 가장 먼저 떠오르는 도구가 바로 instanceof 연산자입니다. 하지만 단순히 "타입을 확인하는 용도"로만 알고 있다면, 객체 지향 프로그래밍(OOP)의 진정한 묘미를 놓치고 있을 가능성이 큽니다. 본 글에서는 instanceof의 기본적인 사용법부터 자바 14 이후 도입된 패턴 매칭 기술, 그리고 실무에서 이 연산자를 사용할 때 주의해야 할 설계적 관점까지 전문적으로 다루어 보겠습니다. --- ## 1. instanceof 연산자란 무엇인가?instanceof는 이항 연산자로, 좌항의 객체가 우항의 특정 클래스나 인터페이스의 인스턴스인지 여부를 확인하여 boolean 값(true/false)을 반환합니다.. 2026. 1. 17. [PYTHON] Regex 완전 정복 : 정규표현식으로 문자열 다루기 정규표현식(Regex)은 텍스트에서 패턴을 찾아내는 강력한 도구입니다. Python의 re 모듈은 정규표현식을 기반으로 복잡한 문자열 검색, 치환, 검증 등을 효율적으로 처리합니다. 실무에서 실전 바로 써먹을 수 있는 패턴 설계 노하우를 중심으로, 초보부터 전문가까지 모두에게 도움이 되는 내용을 제공합니다.1. re 모듈 소개 및 설치 필요 없음Python 표준 라이브러리의 일부로 별도 설치 없이 사용할 수 있습니다.import re 2. 기본 사용법: 검색, 일치, 추출pattern = r"\d+" # 하나 이상의 숫자text = "주소는 123번지입니다."match = re.search(pattern, text)if match: print(match.group()) .. 2025. 7. 22. [ORACLE] REGEXP_REPLACE() 정규표현식으로 문자열 패턴 치환하는 방법 REGEXP_REPLACE()는 Oracle SQL에서 정규표현식을 이용해 문자열을 치환할 수 있는 강력한 함수입니다. 이 글에서는 기본 문법부터 실무 활용 예제까지 체계적으로 설명하여, Oracle을 사용하는 개발자들이 실질적으로 업무에 적용할 수 있도록 안내합니다.1. REGEXP_REPLACE 함수란?Oracle의 REGEXP_REPLACE 함수는 문자열 내에서 정규표현식과 일치하는 부분을 다른 문자열로 대체하는 함수입니다.REGEXP_REPLACE(source_string, pattern, replace_string [, position [, occurrence [, match_parameter]]])source_string: 원본 문자열pattern: 정규표현식 패턴replace_string: .. 2025. 6. 4. 이전 1 다음 728x90