본문 바로가기

프로그래밍 언어/Java2

[Java] 직렬화(Serialization)란? 객체를 저장하거나 메모리, 데이터베이스 혹은 파일로 옮기려면 어떻게 해야할까?  이럴 때 필요한 것이 직렬화(Serialization)다.  자바의 직렬화는 객체를 바이트 스트림으로 변환하여 저장하거나 네트워크를 통해 전송할 수 있게 해주는 과정이다. 쉽게 말해, 자바 객체를 파일에 저장하거나 다른 컴퓨터로 보낼 수 있도록 ‘일렬로 세우는’ 과정이다. 이를 통해 객체의 상태를 저장하거나 공유할 수 있다. 왜 직렬화가 필요한가?직렬화의 주된 목적은 객체를 상태 그대로 저장하고 필요할 때 다시 생성하여 사용하는 것이다.   역직렬화(Deserialization)는 직렬화의 반대말로, 네트워크나 영구저장소에서 바이트 스트림을 가져와서 객체가 저장되었던 바로 그 상태로 변환하는 것이다. 직렬화하면서 생긴 바이트.. 2024. 7. 12.
[Java] class 선언 방법, class란? 클래스 선언하는 방법 클래스란? 클래스는 객체 지향 프로그래밍에서 사용하는 개념으로, 실세계의 사물이나 개념을 소프트웨어 내에서 모델링하기 위한 설계도이다.. 클래스를 통해 객체의 속성(상태)과 행동(메소드)을 정의할 수 있다. 예를 들어, "자동차"를 생각해 보자. 자동차는 색상, 브랜드, 연식 등의 속성을 가지고 있고, 달리기, 멈추기 등의 기능(행동)을 수행할 수 있다. 이를 프로그래밍 세계에서 모델링하려면 "자동차" 클래스를 생성하여 이러한 속성과 행동을 코드로 표현할 수 있다. class Car { // 속성(상태) - 필드 String color; // 자동차의 색상 String brand; // 브랜드 int year; // 연식 // 행동(메소드) void drive() { System.o.. 2024. 2. 14.