본문 바로가기
728x90

[ JAVA ]/JAVA32

[ Java ] 객체 직렬화(Object serialization) CHAPTER 22. 객체 직렬화 알아가기 오늘은 Java의 직렬화, 역직렬화에 대해서 알아봅시다. ■ 직렬화(serialization)란? 자바 시스템 내부에서 사용되는 Object 또는 Data를 외부의 자바 시스템에서도 사용할 수 있도록 byte 형태로 데이터를 변환하는 기술입니다. 또한 JVM(Java Virtual Machine)의 메모리에 상주(힙 또는 스택)되어 있는 객체 데이터를 byte 형태로 변환하는 기술이라고도 합니다. 그렇다면 직렬화는 왜 배워야 할까?? 우리는 파일에 텍스트를 기록하고, 이전 데이터를 기록하는 방법은 많이들 알고 계시겠습니다. 그런데 만약 이런 종류의 데이터들이 아니라 객체를 파일로 저장하거나 읽어올 수 있을까요?? 직렬화만 배운다면 할 수 있습니다. 가 ) 직렬화.. 2023. 1. 11.
[ Java ] I/O Stream CHAPTER 21. 입출력 알아가기 오늘은 데이터 입출력에 대한 포스팅을 해보려 합니다!! 프로그램에서는 데이터를 외부에서 읽고 다시 외부로 출력하는 작업이 빈번하게 일어납니다. 데이터는 사용자로부터 키보드, 마우스 등을 통해 입력될 수도 있고, 파일 또는 네트워크를 통해 입력될 수도 있습니다. 또한 반대로 데이터를 사용자에게 모니터나 파일 등으로 출력할 수도 있는데 자바에서 데이터는 어떻게 입출력이 될까요?? ■ Stream이란? Java에서는 파일이나 콘솔의 입출력을 직접 다루지 않고, stream(스트림)이라는 흐름을 통해 다룹니다. stream이란 실제의 입력이나 출력이 표현된 데이터의 이상화된 흐름을 의미합니다. 즉 단일 방향으로 연속적으로 흘러가는 것을 말하는데, 즉, stream은 운영체제.. 2023. 1. 10.
[ Java ] GUI 프로그래밍 응용 오늘은 이전 포스팅에서 알아보았던 GUI 프로그래밍 예제를 통해서 알아봅시다. 1. FlowLayout FlowLayout은 몇 개의 컴포넌트를 자연스러운 크기로 한 줄로 순서대로 배치합니다. 그럼 예제를 통해서 알아봅시다. public class FlowlayoutEx1 extends JFrame { public FlowlayoutEx1(){ setTitle("FlowLayOut 예제"); setSize(300,200); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE); // flowlayout 설정 setLayout(new FlowLayout(FlowLayout.RIGHT,30,40)); //FloLayout,정렬위치,컴포넌트간 좌우간격 30픽셀.. 2023. 1. 9.
[ Java ] GUI 프로그래밍 개념 CHAPTER 20. GUI 프로그래밍 알아가기 오늘은 GUI에 대해서 포스팅해보려 합니다! 사실 순수 자바 강의에는 GUI가 포함되지 않는 경우가 많습니다. 변수선언, 변수의 종류, 함수정의...등을 설명하고 이것의 결과를 cmd창에 출력하는 것으로만 강의를 진행합니다. 자바로 처음 프로그램에 입문하시는 분들에게는 조금 어려운 내용이 될 수 있습니다..!! ■ GUI란? GUI(Graphical User Interface)는 그래픽 기반의 인터페이스로 우리가 흔히 보는 윈도우 애플리케이션처럼 윈도우 창을 가지고 있으며 버튼을 클릭하고 텍스트를 입력하는 등의 행위를 할 수 있는 화면을 말합니다. Java를 공부하다 보면 대체 왜 이런 연습을 하는지도 모르겠고 앞으로 내가 Java를 가지고 무엇을 할 수 .. 2023. 1. 7.
[ Java ] Thread CHAPTER 19. Thread 알아가기 오늘은 Java에서 특정한 Task를 돌릴 때 동시에 여러 일을 수행할 수 있게 해주는 Thread에 대해 포스팅해보려 합니다! 1 ) 프로세스(Process)와 스레드(Thread) 프로세스(Process) : 실행 중인 프로그램(운영체제로부터 자원을 할당받는 작업의 단위)라고 할 수 있습니다. 즉, 사용자가 작성한 프로그램이 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것을 말합니다. 스레드(Thread) : 프로세스 내에서 할당받은 자원을 이용하는 실행의 단위입니다. 모든 프로세스에는 한 개 이상의 스레드가 존재하여 작업을 수행하며, 두 개 이상의 스레드를 가지는 프로세스를 멀티스레드 프로세스(multi-threaded process)라고 합니다. 예.. 2023. 1. 5.
[ Java ] 예외처리(Exception Handling) CHAPTER 18. Exception Handling 알아가기 프로그램을 실행 중 어떤 원인에 의해 프로그램이 해당 상황에 대처를 하지 못할 경우 비정상적으로 종료되거나 에러 팝업창이 뜨는 경우가 있습니다. 오늘의 포스팅은 오류가 발생했을 때 대처하는 방법인 예외처리에 대해서 해보려 합니다!! 1 ) 예외처리(Exception Handling)란? 프로그램이 실행되는 동안 특정한 문제가 일어났을 때 처리를 중단하고 다른 처리를 하는 것입니다. 그럼 예외가 왜 발생할까?? 1-1 ) 예외가 발생하는 원인 시스템 장애 -네트워크 오류 -사용권한 문제 사용자의 입력 실수 -존재하지 않는 파일 이름 입력 -숫자값 입력란에 일반 문자 입력 -받아들일 수 없는 연산 2 ) 에러, 경고, 예외 Error - 컴파일.. 2023. 1. 4.
728x90