본문 바로가기

Java64

배열로 객체 만들기 배열 기본 개념 복습● 동일한 데이터 타입을 순서에 따라 관리하는 자료 구조● 배열은 정해진 크기가 있다.● 요소를 추가, 삭제시 다른 요소가 이동해야 한다.● 배열 i번째 요소를 찾는 인덱스 연산이 빠르다.● jdk클래스 : ArrayList, Vector removeElement 에 버그 존재 하는 상황 - stack 자료구조 구현시 수정 예정 package structure;/** * 배열을 활용 클래스를 설계 물론 --> 이미 자바 표준 API 개발자들이 잘 만들어 준 클래스 들이 존재 한다. 하지만 직접 기능을 * 확장해서 만들어 보자. */public class TencoIntArray { int[] intArr; int count; // 배열안에 들어간 요소의 갯수 public final i.. 2024. 5. 24.
문자 기반 스트림 - 파일 입출력/Copy/ZIP 자바 입출력(I/O) 시스템은 크게 두 가지 유형의 스트림을 제공한다. 바이트 기반 스트림과 문자 기반 스트림이다. 문자 기반 스트림은 텍스트 데이터(문자 데이터)를 처리할 때 사용된다. ■ 문자 인코딩 처리 : 문자 기반 스트림은 자동으로 플랫폼의 기본 문자 인코딩을 사용하여 문자 데이터를 올바르게 인코딩하거나 디코딩한다. 이는 다양한 문자 인코딩을 처리하면서 발생할 수 있는 복잡성을 추상화하고, 개발자가 문자 데이터를 쉽게 처리할 수 있도록 돕는다.  ■ 국제화 지원 : 유니코드와 같은 다국어 지원을 통해 전 세계적으로 소프트웨어를 배포할 때 필수적이다. 문자 기반 스트림을 사용하면 다양한 언어 문자 처리가 간편해진다.  ■ 가독성 및 편의성 : 문자 데이터를 읽고 쓰는 코드를 작성할 때 문자 기반 .. 2024. 5. 21.
바이트 기반 - 파일 입출력/Copy 바이트 기반에 입력 스트림을 활용해서 파일에 있는 데이터 읽어보기더보기package io.file.ch01;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;public class MyFileInputStream { public static void main(String[] args) { // 외부에 있는 파일 데이터를 읽을려면 input FileInputStream in = null; try { in = new FileInputStream("a.txt"); // 1단게// int readData = in.read(); // 2단계// System.out.pr.. 2024. 5. 20.
I/O, 표준 입출력 자바 I/OInput(입력)과 Output(출력) 약자이다. 데이터를 읽고 쓰는 기능을 말하며, 파일, 네트워크, 다른 프로그램 등 다양한 소스와 대상으로부터 데이터를 주고받는데 사용된다. Stream 스트림스트림은 데이터를 순차적으로 처리하는 일련의 연속된 데이터 요소들입니다. 자바에서 스트림은 데이터의 흐름을 읽고 쓰는데 사용되는 추상적인 개념이다. 입출력 작업을 수행할 때 데이터를 한 곳에서 다른 곳으로 이동시키는 매개체 역할을 한다.스트림은 두 가지 맥락에서 사용된다. 하나는 I/O에 관련된 데이터 흐름을 처리하는 것이다. 다른 하나는 자바 8 이후에 도입된 java.util.stream 패키지에 포함된 스트림 API이다.  java.io 패키지자바 I/O 스트림 API에는 실제로 여러 인터페이스.. 2024. 5. 20.
Data Structure(자료구조) 자료구조  자바에서는 데이터를 효율적으로 구성하고 조작하기 위한 방법을 제공하는 클래스와 인터페이스를 모아 놓았다. 이를 자료구조라고 부른다. 자료구조는 다양한 요구 사항에 맞게 설계되어 있으며 데이터를 삽입, 삭제, 검색, 정렬 등 여러 작업을 효율적으로 수행할 수 있도록 지원한다.   자료구조에는 배열, 리스트, 스택, 큐, 집합, 맵 등이 포함된다. 자료구조는 다양한 상황에서 사용될 수 있다. 프로그램 성능과 효율을 향상시키는 중요한 역할을 한다. 또한 자바 컬렉션 프레임워크(Collection Framework)는 다양한 자료구조를 표준화하여 제공하기 때문에 개발자가 더욱 쉽게 자료구조를 활용할 수 있다. ☞ 프로그램에서 사용할 많은 데이터를 메모리 상에서 관리하는 여러 구현방법이다.☞ 자료를 높.. 2024. 5. 7.
Thread, multi-threading (스레드) 목차ThreadThread 추가로 만들어서 사용하기Thread실행시 스레드 상태(Thread Status) Thread   컴퓨터에서 다수의 사용자들을 동시에 처리할 수 있는 프로그램이 각각의 사용과 관련하여 가지고 있는 정보들.   스레드는 프로세스 내에서 실제로 작업을 수행하는 단위이다. 모든 자바 프로그램은 메인 스레드에서 시작되며, 사용자는 추가적인 스레드를 생성할 수 있다. 각 스레드는 독립적으로 실행되며, 자신만의 호출 스택을 가진다. (각 스레드의 스택 영역은 서로 격리되어 있다.) 프로세스 내의 모든 스레드는 같은 Heap 메모리 공간과 다른 자원을 공유할 수 있다.public class MyThread extends Thread{ // 메인 함수 - 메인 스레드(메인 작업자) // .. 2024. 5. 1.