728x90

전체 글 207

[ Java ] 객체 직렬화(Object serialization)

CHAPTER 22. 객체 직렬화 알아가기 오늘은 Java의 직렬화, 역직렬화에 대해서 알아봅시다. ■ 직렬화(serialization)란? 자바 시스템 내부에서 사용되는 Object 또는 Data를 외부의 자바 시스템에서도 사용할 수 있도록 byte 형태로 데이터를 변환하는 기술입니다. 또한 JVM(Java Virtual Machine)의 메모리에 상주(힙 또는 스택)되어 있는 객체 데이터를 byte 형태로 변환하는 기술이라고도 합니다. 그렇다면 직렬화는 왜 배워야 할까?? 우리는 파일에 텍스트를 기록하고, 이전 데이터를 기록하는 방법은 많이들 알고 계시겠습니다. 그런데 만약 이런 종류의 데이터들이 아니라 객체를 파일로 저장하거나 읽어올 수 있을까요?? 직렬화만 배운다면 할 수 있습니다. 가 ) 직렬화..

[ JAVA ]/JAVA 2023.01.11

[ Java ] I/O Stream

CHAPTER 21. 입출력 알아가기 오늘은 데이터 입출력에 대한 포스팅을 해보려 합니다!! 프로그램에서는 데이터를 외부에서 읽고 다시 외부로 출력하는 작업이 빈번하게 일어납니다. 데이터는 사용자로부터 키보드, 마우스 등을 통해 입력될 수도 있고, 파일 또는 네트워크를 통해 입력될 수도 있습니다. 또한 반대로 데이터를 사용자에게 모니터나 파일 등으로 출력할 수도 있는데 자바에서 데이터는 어떻게 입출력이 될까요?? ■ Stream이란? Java에서는 파일이나 콘솔의 입출력을 직접 다루지 않고, stream(스트림)이라는 흐름을 통해 다룹니다. stream이란 실제의 입력이나 출력이 표현된 데이터의 이상화된 흐름을 의미합니다. 즉 단일 방향으로 연속적으로 흘러가는 것을 말하는데, 즉, stream은 운영체제..

[ JAVA ]/JAVA 2023.01.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픽셀..

[ JAVA ]/JAVA 2023.01.09

[ Java ] GUI 프로그래밍 개념

CHAPTER 20. GUI 프로그래밍 알아가기 오늘은 GUI에 대해서 포스팅해보려 합니다! 사실 순수 자바 강의에는 GUI가 포함되지 않는 경우가 많습니다. 변수선언, 변수의 종류, 함수정의...등을 설명하고 이것의 결과를 cmd창에 출력하는 것으로만 강의를 진행합니다. 자바로 처음 프로그램에 입문하시는 분들에게는 조금 어려운 내용이 될 수 있습니다..!! ■ GUI란? GUI(Graphical User Interface)는 그래픽 기반의 인터페이스로 우리가 흔히 보는 윈도우 애플리케이션처럼 윈도우 창을 가지고 있으며 버튼을 클릭하고 텍스트를 입력하는 등의 행위를 할 수 있는 화면을 말합니다. Java를 공부하다 보면 대체 왜 이런 연습을 하는지도 모르겠고 앞으로 내가 Java를 가지고 무엇을 할 수 ..

[ JAVA ]/JAVA 2023.01.07

[ Spring ] Spring 용어 키워드 간단 정리

오늘부터 Spring의 포스팅을 시작하려고 합니다! 이전 포스팅은 Java 기초 부분에 대해서 포스팅을 해보았는데 어느 정도 Java에 대해서 알았다면 이제 단계에 맞춰서 Spring에 대해서 공부를 시작할 수 있는데, 오늘은 스프링 부트를 공부할 때 Java에 대한 기본적인 지식은 있었지만 그렇다 하더라도 모르는 용어나 키워드가 너무 많기 때문에 Spring 관련 키워드나 용어를 정리해서 작성해보려고 합니다! 1 ) Spring 이란? 스프링은 자바 기반의 웹 어플리케이션을 만들 수 있는 프레임워크입니다. spring.io 사이트에서 확인하면 스프링 프레임워크는 현대 자반 기반의 엔터프라이즈 애플리케이션을 위한 프로그래밍 및 Configuration Model을 제공합니다. 1-2 ) Spring 특징..

[ Java ] Thread

CHAPTER 19. Thread 알아가기 오늘은 Java에서 특정한 Task를 돌릴 때 동시에 여러 일을 수행할 수 있게 해주는 Thread에 대해 포스팅해보려 합니다! 1 ) 프로세스(Process)와 스레드(Thread) 프로세스(Process) : 실행 중인 프로그램(운영체제로부터 자원을 할당받는 작업의 단위)라고 할 수 있습니다. 즉, 사용자가 작성한 프로그램이 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것을 말합니다. 스레드(Thread) : 프로세스 내에서 할당받은 자원을 이용하는 실행의 단위입니다. 모든 프로세스에는 한 개 이상의 스레드가 존재하여 작업을 수행하며, 두 개 이상의 스레드를 가지는 프로세스를 멀티스레드 프로세스(multi-threaded process)라고 합니다. 예..

[ JAVA ]/JAVA 2023.01.05

[ Java ] 예외처리(Exception Handling)

CHAPTER 18. Exception Handling 알아가기 프로그램을 실행 중 어떤 원인에 의해 프로그램이 해당 상황에 대처를 하지 못할 경우 비정상적으로 종료되거나 에러 팝업창이 뜨는 경우가 있습니다. 오늘의 포스팅은 오류가 발생했을 때 대처하는 방법인 예외처리에 대해서 해보려 합니다!! 1 ) 예외처리(Exception Handling)란? 프로그램이 실행되는 동안 특정한 문제가 일어났을 때 처리를 중단하고 다른 처리를 하는 것입니다. 그럼 예외가 왜 발생할까?? 1-1 ) 예외가 발생하는 원인 시스템 장애 -네트워크 오류 -사용권한 문제 사용자의 입력 실수 -존재하지 않는 파일 이름 입력 -숫자값 입력란에 일반 문자 입력 -받아들일 수 없는 연산 2 ) 에러, 경고, 예외 Error - 컴파일..

[ JAVA ]/JAVA 2023.01.04

[ Java ] 내부 클래스(Inner Class)

CHAPTER 17. Inner class 알아가기 1 ) Inner class의 정의 "클래스 안에 선언된 클래스" 특정 클래스 내에서만 주로 사용되는 클래스를 내부 클래스로 선언합니다. 이러한 내부 클래스는 외부 클래스(outer class)에 대해 두 개의 클래스가 서로 긴밀한 관계를 맺고 있을 때 선언할 수 있습니다. 2 ) Inner class 장단점 장점 - 내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근할 수 있습니다. -코드의 복잡성을 줄일 수 있습니다. 단점 -코드의 재사용이 어렵습니다. -내부(중첩) 클래스입니다.(inner class, nested class) 3 ) 선언하는 위치에 따른 4가지 형태 내부 클래스는 필드와 마찬가지로 선언된 위치에 따라 다음과 같이 구분됩니다. - 인..

[ JAVA ]/JAVA 2023.01.03

[ Java ] Scanner

CHAPTER 16. Scanner 알아가기 오늘은 java.util 패키지에 포함되어 있는 Scanner 클래스의 사용법에 대해 알아보도록 하겠습니다. 자바를 처음 배울 때 아마 대부분은 키보드로 입력받기 위해 Scanner라는 클래스를 썼을 거예요! 자바 외에도 다양한 언어들은 각각의 입력 방식이 있고, 각 언어별로 대표하는 대중적인 입력방식이 하나씩 있습니다. 자바에서도 여러 가지 입력 방법이 있는데, 그중에 가장 쉬우면서도 대중적인 입력 중 대표적인 것이 바로 Scanner 클래스를 이용한 입력입니다. 1 ) Scanner 클래스 특징 - Scanner 클래스란 화면으로부터 데이터를 입력받는 기능을 제공하는 클래스입니다. 카톡에서 메시지를 입력 후 전송 버튼을 누르면 상대방에게 메세지가 전송되듯 ..

[ JAVA ]/JAVA 2022.12.29

[ Java ] Collection Framework

CHAPTER 15. Collection Framework 이전 포스팅에서 java.utill 패키지에서 제공하는 Generic에 대해서 알아보았습니다. 오늘은 Collertion Framework(컬렉션 프레임워크)에 대해 알아봅시다!! 1 ) Collertion Framework란? 자바에서 Collertion Framework란 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합을 의미합니다. 배열은 크기가 고정되어 있는 데에 반해, 컬렉션 프레임워크는 가변적인 크기를 갖는(Resizabla)등의 특징이 있고, 데이터 삽입, 탐색, 정렬 등 편리한 API를 다수 제공합니다. 즉 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 ..

[ JAVA ]/JAVA 2022.12.28
728x90