본문 바로가기

BACKEND6

자바 Enum의 특징과 사용법, 그리고 주의 사항을 알아보자 1. Enum의 개념 및 특징 우리가 흔히 상수를 정의할 때 final static string과 같은 방식으로 상수를 정의한다. 하지만 이렇게 상수를 정의해서 코딩하는 경우 다양한 문제가 발생된다. 이러한 문제점들을 보완하기 위해 JAVA 1.5버전부터 추가된 것이 바로 enum이다. 자바의 enum은 열거형(Enumeration)을 나타내는 특별한 데이터 타입이다. enum은 서로 연관된 상수값들을 정의하고 사용하기 위한 용도로 사용된다. enum의 주요 특징 1. 상수 집합 정의 서로 연관된 상수 값을 그룹화하여 정의하며, 상수 값을 열거하므로 열거형이라고 불린다. 2. 클래스와 유사 클래스와 유사한 구조를 가지며, 생성자, 멤버 변수, 메서드를 가질 수 있다. 각 상수 값은 해당 enum 타입의 .. 2023. 12. 29.
자바의 원시 타입(Primitive Type) VS 참조 타입 (Reference Type) 1. 원시 타입(Primitive Type)과 참조 타입(Reference Type) JAVA에는 데이터 타입을 원시 타입(Primitive Type)과 참조 타입(Reference Type)으로 나눌 수 있다. 원시 타입(Primitive type)은 기본 데이터 유형으로, 스택 메모리에 직접 값이 저장된다. 원시 타입의 종류로는 정수 타입의 byte, short, int, long / 실수 타입의 float, double 논리 타입의 boolean / 문자형의 char로 총 8개의 타입이 있다. 참조 타입(Reference type)은 객체의 참조를 저장하는 데 사용되며, 객체는 힙 메모리에 저장된다. 참조 타입의 종류로는 클래스, 인터페이스, 배열 등이 있다. 2. 원시 타입과 참조 타입의 차이점 .. 2023. 12. 18.
오버로딩과 오버라이딩의 개념 및 차이점 오버로딩(Overroading) 정의 동일한 메서드 이름을 가지고 매개변수의 타입, 개수, 또는 순서가 다르게 여러 버전의 메서드를 선언하는 것 특징 메서드 이름은 동일하나, 매개변수의 시그니처가 서로 달라야 함 반환 타입은 오버로딩에 영향을 미치지 않음 예시 코드 class Example { void print(int a) { System.out.println(a); } void print(double b) { System.out.println(b); } } 오버라이딩(Overriding) 정의 부모 클래스에서 이미 정의된 메서드를 자식 클래스에서 동일한 시그니처로 재정의하는 것 특징 메서드 시그니처(이름, 매개변수, 반환 타입)가 부모 클래스와 동일해야 함 부모 클래스에서 상속받은 메서드를 자식 클래.. 2023. 12. 13.
[Oracle] - 조건에 부합하는 중고거래 댓글 조회하기 문제 USED_GOODS_BOARD와 USED_GOODS_REPLY 테이블에서 2022년 10월에 작성된 게시글 제목, 게시글 ID, 댓글 ID, 댓글 작성자 ID, 댓글 내용, 댓글 작성일을 조회하는 SQL문을 작성 결과는 댓글 작성일을 기준으로 오름차순 정렬해주시고, 댓글 작성일이 같다면 게시글 제목을 기준으로 오름차순 정렬 주의사항 - CREATED_DATE의 포맷이 예시의 포맷과 일치해야 정답처리 (YYYY-MM-DD) 테이블 정보 USED_GOODS_BOARD BOARD_ID, WRITER_ID, TITLE, CONTENTS, PRICE, CREATED_DATE, STATUS, VIEWS USED_GOODS_REPLY REPLY_ID, BOARD_ID, WRITER_ID, CONTENTS, CR.. 2023. 12. 12.
equals()와 hashCode()의 역할 및 오버라이딩 시 주의사항 1. equals() 메서드와 hashCode() 메서드의 차이점 equals() 메서드는 객체의 값의 일치여부(boolean)을 반환하는 타입이고, hashCode() 메서드는 객체의 주소값(int)을 이용하여 객체 고유의 해시코드를 리턴하는 함수이다. euqlas() 메서드와 hashCode() 메서드의 차이점 1. 사용 목적 equals() 두 객체가 논리적으로 동일한지를 확인하는 데 사용된다. 즉, 두 객체의 내용이 같은지를 비교한다. hashCode() 객체의 해시 코드 값을 반환하는 데 사용된다. 해시 코드는 일반적으로 객체가 저장되는 자료구조에서 빠른 검색을 위해 활용된다. 2. 시나리오 equals() 주로 두 객체의 내용이 같은지 확인하는데 사용되며, 논리적인 동등성 비교에 활용한다. 예.. 2023. 12. 12.
UML 다이어그램 (유스케이스, 클래스, 시퀀스) CHAP 01. UML UML - 통합 모델링 언어(Unified Modeling Language) 소프트웨어 공학에서 사용되는 표준화된 범용 모델링 언어. 소프트웨어 개념을 다이어그램으로 그리기 위해 사용하는 시각적인 표기법 모델링의 역사 절차지향모델링(반영 X 한계 도달) > 객체지향모델링(호환성 문제) > UML 공표 모델링(Modeling) - 각자 생각하는 것에 따라 다르게 표현 모델링이란 정답이 없으니 정답을 찾으려 하지 말것 모델링이란 - 말 그대로 모델을 만드는 작업 즉, 현실 세계를 단순화 시켜 표현하는 기법 pm들이 작성한 모델링 결과물을 보고 개발(구현) 할 줄 알아야 함 UML의 필요성 의사소통 하기 좋음 대규모 프로젝트 구조의 로드맵을 만들 때 유용함 개발할 시스템 구축에 대한 기.. 2023. 1. 9.