본문 바로가기

반응형

개발/Java

(58) GITHUB 방명록
[JAVA 파헤치기] Arrays, System.arraycopy 를 활용하여 배열 다루기 개발/Java / 2022. 5. 9. 안녕하세요😎 백엔드 개발자 제임스입니다 :) 오늘은 프로그래밍의 기초 개념인 배열에 관해서 포스팅하려고 합니다. 포스팅하기 전에! 이번 포스팅은 배열의 기본적인 개념을 알고 있다는 가정하에 정리했음을 미리 알립니다. 따라서 이번 주제는 [배열 다루기] 입니다! :) 배열을 다루는 방법은 굉장히 많은데요. 그중에서 Arrays와 System.arraycopy에 대해서 설명하겠습니다. 여기서 배열을 다룬다는 의미는 배열을 복사하거나 추가, 삭제 등 다양한 기능을 의미합니다. 이제 자세하게 설명을 하도록 하겠습니다. 1. System.arraycopy() arrayclass는 이름 그대로 배열을 복사하는, System 클래스의 메서드입니다. 해당 메서드는 반환을 하지 않는 void입니다. void arrayc..
[JAVA 파헤치기] 문자 타입 'char' 와 문자열 'String' 의 진실 개발/Java / 2022. 5. 6. 안녕하세요😎 백엔드 개발자 제임스입니다 :) 자바 언어를 공부하기 시작하신 분이라면, 자료형에 대해서 배웠을 것입니다. 주로 자료형 또는 데이터 타입이라고 부르는데요. 변수에 담길 값의 형태를 나타내 주는 중요한 개념입니다. 이러한 자료형에는 다양한 종류와 명칭이 있습니다. 포스팅을 시작하기 전에 기본 타입 자료형에는 어떤 종류가 있는지 알아보도록 하겠습니다. 기본 타입(Primitive type) 데이터의 실제 값을 의미 정수 타입, 실수 타입, 문자 타입, 논리 타입으로 분류 위 그림에서 보이는 내용들이 기본 타입에 해당합니다. 이제 오늘 포스팅 주제를 소개하겠습니다. 이번 포스팅은 문자 타입의 char와 문자열을 나타내는 String에 대해서 자세하게 정리하고, 두 가지를 비교해보려고 합니다. 평소..
[JAVA 파헤치기] 객체 지향, 클래스, 객체 개념 다루기 개발/Java / 2022. 3. 7. 1. 객체지향 언어 자바(Java)의 특징인 객체지향에 대해서 알아보도록 하겠습니다. 객체 지향 프로그래밍(Object-Oriented Programming,OOP)은 여러 개의 독립된 단위, 즉 "객체(Object)"들의 모임으로 파악하는 것입니다. 다시 말해서 프로그램을 수많은 객체라는 기본 단위로 나누고 이들의 상호작용으로 서술하는 방식입니다. 여기서 객체는 '실제로 존재하는 것'입니다. 즉 어떠한 데이터(실체)와 관련된 동작을 포함한 개념입니다. 예를 들어 우리 주변에서 볼 수 있는 책상, 의자, 자동차, 고객 등과 같습니다. 객체지향이론에서는 사물과 같은 유형적인 것뿐만 아니라, 개념이나 논리와 같은 무형적인 것들도 객체로 간주합니다. JavaScript : 프로토타입 객체지향 Python : ..
Thread 개발/Java / 2021. 5. 14. Thread 란? process 실행 중인 프로그램이 실행되면 OS로부터 메모리를 할당받아 프로세스 상태가 됨 thread : process는 하나 이상의 thread를 가지게 되고, 실제 작업을 수행하는 단위는 thread ' 하나의 프로그램이 돌아간다 = 하나 이상의 thread를 갖고 있다 ' multi-threading 여러 thread가 동시에 수행되는 프로그래밍, 여러 작업이 동시에 실행되는 효과 thread는 각각 자신만의 작업 공간을 가짐( context ) 각 thread 사이에서 공유하는 리소스가 있을 수 있음(자바에서는 static instance) 여러 thread가 리소스를 공유하여 작업이 수행되는 경우 서로 자원을 차지하려는 race condition이 발생할 수 있음 이렇게 여..
직렬화(serialization) 개발/Java / 2021. 5. 11. serialization 이란? 인스턴스의 상태를 그대로 파일로 저장하거나 네트워크로 전송(serialization)하고 이를 다시 복원(deserialization) 하는 방식 자바에서는 보조 스트림을 활용하여 직렬화를 제공 ObjectInputStream과 ObjectOutputStream ObjectInputStream(InputStream in) : InputStream을 생성자의 매개변수로 받아 ObjectInputStream을 생성 ObjectOutputStream(OutputStream out) : OutputStream을 생성자의 매개변수로 받아 ObjectOutputStream을 생성 ① Serializable 인터페이스 직렬화는 인스턴스의 내용이 외부로 유출되는 것이므로 프로그래머가 해..
I/O 스트림 정의 개발/Java / 2021. 5. 9. 입출력 스트림 네트워크에서 자료의 흐름이 물의 흐름과 같다는 비유에서 유래 자바는 다양한 입출력 장치에 독립적으로 일관성있는 입출력 스트림을 통해 제공 입출력이 구현되는 곳: 파일 디스크, 키보드, 마우스, 네트워크, 메모리 등 입출력 스트림의 구분 대상 기준 : 스트림/ 출력 스트림 자료의 종류 : 바이트 스트림/ 문자 스트림 기능 : 기반 스트림/ 보조 스트림 ① 입력 스트림과 출력 스트림 입력 스트림 : 대상으로부터 자료를 읽어 들이는 스트림 출력 스트림 : 대상으로 자료를 출력하는 스트림 @스트림의 종류 입력 스트림 : FileInputStream, FileReader, BufferedInputStream, BufferReader 등 출력 스트림 : FileOutputStream, FileWrit..

반응형