728x90
반응형

자바(JAVA) 18

자바 - Thread / Lambda / Stream

Tread란? Thread의 작동 원리 Lambda Stream • Tread란? 컴퓨터에 대해 잘 아는 사람이라면 스레드에 대해 들어봤을 것이다. 보통 CPU에서 작업을 할 때 '프로세스'라고 하는 데 이를 나눠서 병렬 처리 하는 것을 스레드라고 한다. 자바를 비롯한 다른 언어에서 사용하는 스레드도 이와 마찬가지로 두 가지 이상의 일을 동시에 처리하는 것을 'Tread'라고 한다. 자바에서 스레드를 생성하고 관리하는 주요 클래스는 'java.lang.Thread' 클래스다. 일반적으로 메인 스레드에서 시작하며, 이후에 필요한 경우 추가 스레드를 생성하여 병렬 작업을 수행한다. 스레드를 생성하려면 'Thread' 클래스의 하위 클래스를 만들거나 'Runnable' 인터페이스를 구현하는 클래스를 사용한다...

자바(JAVA) 2023.11.05

자바 - 입/출력(IO, Input/Output)

자바의 입출력 방법 콘솔 입출력 파일 입출력 • 자바의 입출력 방법 자바에서는 다양한 입출력 방법을 제공하고 있다. 입출력이란 데이터를 읽고 쓰는 과정을 의미하며, 다양한 소스와 대상 간의 데이터 전송을 다룬다. 각각의 유형에 대해 설명하면 다음과 같다. 자바의 입출력 유형 1. 콘솔 입력과 출력(Console I/O) - 콘솔 입력은 주로 키보드로부터 입력 받는 것을 의미한다. - 콘솔 출력은 화면에 정보를 표시하는 과정을 의미한다. - 'System.in'은 Standard Input으로, 'System.out'과 'System.err'는 Standard Output으로 사용된다. 2. 파일 입출력(File I/O) - 파일 입출력은 파일에서 데이터를 읽어오거나 파일에 데이터를 쓰는 과정을 의미한다...

자바(JAVA) 2023.10.05

자바 - 객체 지향(3) : 다형성(Polymorphism)

다형성(Polymorphism)이란? 다형성의 종류 업캐스팅과 다운캐스팅 • 다형성(Polymorphism)이란? 다형성은 객체 지향 프로그래밍의 중요한 개념 중 하나로, 여러 클래스가 동일한 인터페이스 또는 기본 클래스를 공유함으로써 코드의 유연성을 확보하고 재사용성을 높이는 데 사용한다. 이전에 다룬 게시글에 나온 방법들이 전부 다형성과 관련된 내용들이다. 예를 들어서 다음과 같은 내용들을 참고하면 좋다. [참고 - 메서드 오버라이딩] : 상속 마지막 내용에 있다.(더 보기 참고) [참고 - 인터페이스] : 위 링크에 포함된 내용이다. [참고 - 상위 클래스 참조 변수] : 상속 내용에 포함되어 있다. // 인터페이스1 interface Explore { String getItem(); default..

자바(JAVA) 2023.09.18

자바 - 객체 지향(2) : 상속, 생성자, 인터페이스

상속(Inheritance) 생성자(Constructor) 인터페이스(Interface) • 상속(Inheritance) 상속은 객체 지향 프로그래밍의 핵심 개념 중 하나로, 클래스 간의 관계를 나타내며 코드의 재사용을 활발히 할 수 있는 방법 중 하나다. 자식 클래스가 부모 클래스로부터 특성(멤버 변수와 메서드)을 물려받아 사용할 수 있도록 하는 메커니즘이다. 상속의 특징 1. 클래스 계층 구조(Class Hierarchy) - 상속은 클래스 간의 계층 구조를 형성한다. 부모 클래스(슈퍼 클래스)와 자식 클래스(서브 클래스) 간의 관계를 성립한다. - 부모 클래스는 일반적인 특성(멤버 변수 등)과 동작(메서드)을 정의하며, 자식 클래스는 부모 클래스의 특성을 상속하여 추가적인 특성을 정의할 수 있다. ..

자바(JAVA) 2023.09.14

자바 - 객체 지향(1) : 객체 지향, 클래스와 객체, 객체 변수와 메서드

객체 지향 프로그래밍 클래스(Class)와 객체(Object) 객체 변수(Intance variable) 메서드(Method) • 객체 지향 프로그래밍 객체 지향 프로그래밍(OOP, Object-Oriented Programming)은 소프트웨어 개발에 사용되는 프로그래밍 패러다임 중 하나로, 현실 세계의 개념을 모델링하고 이를 객체(Object)라는 기본 단위로 표현하는 개념이다. 주된 목표로는 코드의 재사용성, 유지보수성, 확장성 향상과 복잡한 S/W 시스템을 더욱 효과적으로 설계하고 구현하기 위한 도구이다. OOP의 주요 개념과 원칙 1. 클래스(Class) 클래스는 객체를 생성하기 위한 템플릿 또는 설계도 역할을 한다. 객체의 상태(속성, 멤버 변수) 및 행동(메서드, 함수)를 정의한다. 2. 객..

자바(JAVA) 2023.09.08

자바 - 제어문, 조건문, 반복문, 분기문

제어문(Control Statement)이란? 조건문(Conditional Statement) 반복문(Loop Statement) 분기문(Branching Statement) 그 외(for each) • 제어문(Control Statement)이란? 제어문은 프로그램의 흐름을 제어하고 조건에 따라 코드를 실행하거나 반복하는 데 사용한다. 제어문은 어떤 프로그래밍 언어에서든 가장 중요하다고 보면 된다. 뼈대가 되는 구조 중 하나이며, 다양한 유형들이 존재하기 때문이다. 이전 게시물에서 예시에서도 간간히 사용된 적이 있다. 종류 - 조건문(Conditional Statements) - 반복문(Loop Statements) - 분기문(Branching Statement) • 조건문(Control Stateme..

자바(JAVA) 2023.09.05

자바 - 형 변환(Type Conversion)

형 변환(Type Conversion) 추가 내용 • 형 변환(Type Conversion) 형 변환은 하나의 데이터의 유형을 다른 데이터 유형으로 변환하는 것을 말한다. 형 변환은 데이터의 유형이 서로 호환 가능할 때만 사용이 가능하다. 형 변환은 크게 두 가지 유형으로 나뉜다. 암시적 형 변환(implicit type conversion)과 명시적 형 변환(explicit type conversion)이다. 1. 암시적 형 변환(자동 형 변환, Implicit Type Conversion) 데이터 타입을 자동으로 변환하는 것을 뜻한다. 다시 말해서 컴파일러나 인터프리터가 프로그램 실행 중에 자동으로 타입 변환을 수행하는 것을 말한다. 하지만 때로는 의도치 않은 결과를 초래할 수 있다. - 더 작은 데..

자바(JAVA) 2023.08.30

자바 - Map, 집합, 상수 집합

맵(Map)이란? Map 인터페이스의 주요 메서드 Map 자료형의 구현 가능한 종류 집합(Set)이란? 집합의 주요 메서드 집합의 종류 상수 집합(Constant Set) • 맵(Map)이란? 맵은 키-값(Key-Value)을 쌍으로 구성되어 저장되는 자료 구조다. 특정 키를 통해 연관된 값을 검색하고 저장하는 데 사용된다. Map은 'java.util' 패키지에 정의 되어 있다. 파이썬의 사전(Dictionary)과 비슷하다고 생각하면 된다. [참고] - https://bluenoa.tistory.com/11 Dictionary 자료 · Dictionary Dictionary는 '사전'이라는 뜻을 갖고 있다. 우리가 흔히 접하는 한글 사전이나 영어 사전 등을 보면 책의 우측에 보면 가~힣, 혹은 A~Z..

자바(JAVA) 2023.08.29

자바 - 리스트(List)

리스트란? ArrayList와 LinkedList 제네릭스(Generics) 제네릭스의 특징 리스트와 배열의 차이점 추가내용 • 리스트란? 리스트는 배열과 비슷하지만 좀 더 편의 기능이 많다고 볼 수 있다. 그 차이점은 좀 있다가 설명하고, 리스트에 대해서 서술하자면 리스트는 동일한 데이터 타입의 요소들을 순서대로 저장하는 자료 구조이다. 크기를 동적으로 조절할 수 있으며, 자바에서는 'java.util' 패키지에서 제공하는 'List' 인터페이스와 그를 구현한 클래스를 통해 사용할 수 있다. - 리스트의 주요 특징 1. 크기 조절 리스트는 동적으로 크기를 조절할 수 있어 요소의 추가 및 삭제가 가능하다. 2. 중복 요소 허용 하나의 리스트 내에 같은 요소가 여러 번 포함될 수 있다. 3. 순서 유지 요..

자바(JAVA) 2023.08.21

자바 - 배열(Array)

배열이란? 배열 추가 내용 파이썬과의 차이점 • 배열이란? 배열은 숫자와 문자, 문자열 등의 여러 데이터를 다루면서 어떤 집합이란 것을 숫자나 문자열로만 표현하기 어려울 경우 배열을 사용하게 된다. 이때 자료형 옆에 '[]' 기호를 붙여서 사용한다. 자바에서 배열은 동일한 데이터 타입을 가진 여러 값을 저장하는 자료 구조로 배열은 메모리에 연속적으로 할당되며, 각 요소는 인덱스를 사용하여 접근할 수 있다. 배열은 프로그램에서 데이터를 구조화하고 다루는 데 사용된다. - 배열의 주요 특징과 개념 1. 고정 길이 배열의 크기는 생성 시에 결정되며, 이후 변경할 수 없다. 2. 동일한 데이터 타입 배열 내의 모든 요소는 동일한 데이터 타입을 가져야 한다. 3. 인덱스 배열의 각 요소는 0부터 시작하는 인덱스를..

자바(JAVA) 2023.08.14
728x90
반응형