본문 바로가기
728x90

Java3

Java의 객체 직렬화 : 외부화와 차이점 Java의 객체 직렬화 Java의 객체 직렬화는 객체의 상태를 바이트 스트림으로 변환하는 프로세스로, 이를 통해 객체를 쉽게 파일에 저장하거나 네트워크를 통해 전송하거나 데이터베이스에 유지할 수 있습니다. 역직렬화 프로세스는 바이트 스트림에서 객체를 재구성합니다. java.io.Serialized 인터페이스는 클래스가 직렬화될 수 있음을 나타내는 데 사용되는 마커 인터페이스입니다. 클래스가 '직렬화 가능'을 구현하면 해당 인스턴스는 Java에 내장된 직렬화 메커니즘을 사용하여 직렬화 및 역직렬화될 수 있습니다. 객체 직렬화를 사용하는 이유 1. 지속성: 나중에 검색할 수 있도록 객체 상태를 파일이나 데이터베이스에 저장하기 위해 객체를 직렬화합니다. 2. 통신: 네트워크 통신을 위해 개체를 직렬화하여 응용.. 2024. 1. 14.
Java의 ArrayList와 LinkedList 비교: 올바른 데이터 구조 선택 데이터 구조 ArrayList: 요소를 저장하기 위해 동적 배열을 사용합니다. 인덱스를 사용하여 요소에 직접 액세스할 수 있습니다. LinkedList: 각 요소가 다음 요소와 이전 요소를 가리키는 이중 연결 목록을 사용합니다. 성능 ArrayList: 빠른 무작위 액세스를 제공하며 인덱스별로 요소에 액세스할 때 더 효율적입니다. LinkedList: 효율적인 노드 조작으로 인해 특히 목록 중간에서 자주 삽입하고 삭제하는 데 더 적합합니다. 메모리 사용량 ArrayList: 데이터와 배열만 저장하면 되므로 일반적으로 요소당 메모리를 덜 소비합니다. LinkedList: 각 요소에는 다음 및 이전 요소에 대한 참조가 있으므로 요소당 더 많은 메모리가 필요합니다. 삽입 및 삭제 ArrayList: 빈번한 삽.. 2023. 12. 22.
자바로 배우는 객체지향 프로그래밍: 캡슐화, 상속, 다형성, 추상화의 핵심 Object-Oriented Programming (OOP)은 "객체" 개념을 기반으로 하는 프로그래밍 패러다임으로, 이는 데이터(속성 또는 프로퍼티)와 코드(메서드 또는 함수)를 포함할 수 있는 "객체"를 중심으로 합니다. OOP의 네 가지 주요 원칙은 다음과 같습니다: 1. 캡슐화 캡슐화는 데이터(속성)와 해당 데이터를 조작하는 메서드(함수)를 하나의 단일 단위인 클래스로 묶는 것입니다. 자바에서 클래스는 객체를 생성하기 위한 청사진이며, 캡슐화는 객체의 내부 세부 사항을 숨기고 필요한 부분만 노출함으로써 도움을 줍니다. 예시 (자바): public class Car { private String model; private int year; public void setModel(String model.. 2023. 12. 21.
728x90