Java(3)
-
[Java] 인터페이스 vs 추상클래스 차이 (JPA Timestamp 시간 필드 구현)
JPA로 구현 중, Entity에 모두 공통으로 registeredDate와 modifiedDate 필드가 들어가 있는 것을 확인했다. 모두 같은 이름으로 사용하고 있으니까 BaseTimeEntity 객체로 분리해서 상속받게 하면 더 깔끔해지고, 이후에 변경 사항이 있어도 고치기 수월할 것 같아서 분리 작업을 진행하였다. 인터페이스로 구현할까 클래스로 구현할까 고민 중, 둘의 차이가 헷갈려서 다시 정리 함. (참고로 gpt는 추상 클래스로 방법을 알려줬다.) 추상 클래스인터페이스사용 키워드abstractinterface사용 가능 변수제한 없음static final (상수)사용 가능 접근 제어자제한 없음 (public, private, protected, default)public사용 가능 메소드제한 없..
2025.05.02 -
[자바의 정석] 06 객체 지향 프로그래밍 (1)
1. 객체지향언어 1.1 객체지향언어의 역사 - 객체지향이론의 기본 개념 : 실제 세계는 사물(객체)로 이루어져 있으며, 발생하는 모든 사건들은 사물 간의 상호작용이다. -> 상속, 캡슐화, 추상화 개념을 중심으로 구체적으로 발전. 1.2 객체지향언어 - 특징 1. 코드의 재사용성이 높다 : 기존의 코드를 이용해 쉽게 작성할 수 있다. 2. 코드의 관리가 용이하다 : 코드의 관계를 이용해 적은 노력으로 쉽게 코드를 변경할 수 있다. 3. 신뢰성이 높은 프로그래밍을 가능하게 한다 : 제어자와 메서드를 이용해서 데이터를 보호하고 올바른 값을 유지하도록 하며, 코드의 중복을 제거하여 코드의 불일치로 인한 오동작을 방지할 수 있다. => 프로그램 개발과 유지보수에 드는 시간과 비용을 획기적으로 개선할 수 있는 ..
2022.04.15 -
[자바의 정석] 08장 예외 처리
1.1 프로그램 오류 어떤 원인에 의해 오작동하거나 비정상적으로 종료되는 경우 이를 프로그램 에러 또는 오류라 함. 발생 시점에 따라 세 가지로 나뉨 - 컴파일 에러 : 컴파일 시에 발생하는 에러 - 런타임 에러 : 실행 시에 발생하는 에러 ▷ 에러(error)와 예외(exception) 두 가지로 구분. 에러 : 프로그램 코드에 의해 수습될 수 없는 심각한 오류 (OutOfMemoryError, StackOverflowError...) 예외 : 프로그램 코드에 의해 수습될 수 있는 다소 미약한 오류 - 논리적 에러 : 실행은 되지만 의도와 다르게 동작하는 것 1.2 예외 클래스 계층 구조 모든 클래스의 조상은 Object 클래스. Exception과 Error 클래스 모두 Object 클래스의 자손들임..
2022.03.25