일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- IntelliJ
- 리눅스
- SQL
- mssql
- java
- API
- 명령어
- 티스토리챌린지
- 자바
- oracle
- git
- MongoDB
- group by
- PostgreSQL
- Python
- 차이점
- rsync
- top
- docker
- analytics4
- Javascript
- JPA
- network
- 트랜잭션
- DBMS
- mysql
- MariaDB
- 오블완
- spring
- Linux
- Today
- Total
목록JAVA (46)
hanker
Java 멀티스레딩(Multi-threading)은 하나의 프로그램에서 동시에 여러 작업을 실행할 수 있도록 하는 강력한 기능이다. 이번 글에서 Java 멀티스레딩을 사용하는 방법과 주요 개념, 실 예제까지 알아보자!1. 멀티스레딩의 정의와 필요성 멀티스레딩은 하나의 프로세스 내에서 여러 스레드(Thread)가 동시에 실행되도록 하는 기술이다.Java는 기본적으로 멀티스레드 환경을 지원한다. 사용이점 1-1. 성능 향상 : 병렬 처리로 작업 시간을 줄일 수 있다.1-2. 응답성(response time) 개선 : 긴 작업이 진행되는 동안에도 애플리케이션이 응답성을 유지할 수 있다.1-3. 자원 효율성 : 동일한 메모리 공간에서 여러 작업을 수행하므로 자원을 더 효율적으로 사용할 수 있다. 2. Java의..
이번 글에서는 Checked / Unchecked Exception 두 예외처리에 대해서 자세히 알아보자. https://hanke-r.tistory.com/entry/Java-%EC%BB%B4%ED%8C%8C%EC%9D%BC%ED%83%80%EC%9E%84Compile-Time%EA%B3%BC-%EB%9F%B0%ED%83%80%EC%9E%84Run-Time%EC%9D%B4-%EB%AD%98%EA%B9%8C Java - 컴파일타임(Compile Time)과 런타임(Run Time)이 뭘까?프로그램의 실행과 관련된 중요한 개념인 컴파일 타임(Compile Time)과 런타임(Run Time)에 대해서 알아보자! 컴파일 타임 (Compile Time) 정의- 컴파일 타임은 소스 코드를 기계어로 변환하는 컴파..
프로그램의 실행과 관련된 중요한 개념인 컴파일 타임(Compile Time)과 런타임(Run Time)에 대해서 알아보자! 컴파일 타임 (Compile Time) 정의- 컴파일 타임은 소스 코드를 기계어로 변환하는 컴파일 과정에서 발생하는 시간을 의미한다.- 프로그램이 실행되기 전에 코드가 컴파일러에 의해 번역되고 오류를 검사하는 단계이다. 주요 특징오류 감지: 컴파일러는 문법 오류(Syntax Error), 타입 오류(Type Error), 선언되지 않은 변수, 잘못된 메서드 호출 등을 검사한다.정적 분석: 프로그램 실행 전 정적인 코드 구조만을 분석한다.바이트코드 생성: Java의 경우, 컴파일 타임에 소스 코드(.java)가 바이트코드(.class)로 변환된다. 문법오류 예 : public ..
Servlet은 자바기반의 웹 애플리케이션을 개발하기 위해 사용되는 서버 측 기술로, 클라이언트의 요청을 처리하고 동적으로 결과를 생성하여 응답하는 역할을 한다. Servlet은 Java EE (이전의 J2EE)의 핵심 구성 요소 중 하나이며, 주로 HTTP 요청과 응답을 처리하기 위해 사용된다.(현재는 거의 사용하지 않음) 주요 특징 1. Java 기반- 플랫폼 독립적인 Java로 작성되어 다양한 환경에서 실행 가능 2. 웹 요청 처리- HTTP 프로토콜을 기반으로 클라이언트 요청(예: GET, POST 등)을 처리하고 동적으로 HTML, JSON 등 다양한 형식의 데이터를 생성 3. 컨테이너에서 실행- 서블릿 컨테이너(Tomcat, Jetty 등) 내에서 실행되며, 요청 수명 주기를 관리 4. 확장성..
Java에서 쓰레드(Thread)는 하나의 프로세스 내에서 실행되는 독립적인 실행 흐름을 말한다.자바에서는 멀티쓰레딩을 지원하여, 하나의 프로그램이 동시에 여러 작업을 병렬로 처리할 수 있도록 해준다.멀티쓰레딩은 CPU 활용을 극대화하고, 프로그램의 응답성을 개선하며, 작업을 효율적으로 처리할 수 있도록 도와준다. 쓰레드는 Thread 클래스 또는 Runnable 인터페이스를 사용하여 생성할 수 있습니다. 쓰레드 생성 방법 방법 1: Thread 클래스를 상속하여 쓰레드 생성 Thread 클래스를 상속하고, run() 메서드를 오버라이드하여 실행할 작업을 정의한다.public class MainEx { public static void main(String[] args) { MyThre..
Java에서 가비지 컬렉션(Garbage Collection)은 더 이상 참조되지 않거나 사용되지 않는 객체를 자동으로 메모리에서 해제하여 메모리 누수(Memory Leak)를 방지하고 효율적으로 메모리를 관리하는 기능이다. 이 과정은 JVM(Java Virtual Machine)에 의해 자동으로 수행되며, 프로그래머가 메모리 관리를 직접적으로 수행할 필요가 없다.https://hanke-r.tistory.com/entry/JAVA-JDK-JRE-JVM%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90%EC%9D%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C JAVA - JDK, JRE, JVM의 차이점은 무엇일까?자바를 처음 접하다 보면 다양한 용어에 혼란을 느..
제네릭(Generic)은 Java에서 컴파일 시점에 타입을 지정할 수 있도록 해주는 기능이다. 제네릭을 사용하면 코드의 재사용성을 높이고, 타입 안정성을 강화할 수 있으며, 명시적 형변환(casting)을 줄여 코드 가독성을 개선할 수 있습니다. 가장 흔한 예로는 List, Map 과 같은 컬렉션 프레임워크가 있다.https://hanke-r.tistory.com/entry/JAVA-JAVA%EC%97%90%EC%84%9C-%EC%BB%AC%EB%A0%89%EC%85%98-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C JAVA - JAVA에서 컬렉션 프레임워크란 무엇일까?이번 글에서는 J..
Java에서 접근 제어자(Access Modifiers)는 클래스, 메서드, 필드 등 구성 요소에 대한 접근 권한을 설정하는 키워드이다.접근 제어자를 통해 코드의 접근 범위를 제한하거나 허용하여 캡슐화와 보안성을 높일 수 있다. Java에서는 네 가지 접근 제어자를 사용할 수 있는데, public, protected, private, 그리고 default (접근 제어자를 명시하지 않았을 때)가 있다. 각 접근 제어자의 특징을 알아보자! public 범위: 모든 클래스에서 접근 가능.특징: 해당 멤버가 public으로 선언된 경우, 패키지 내외의 모든 클래스에서 접근할 수 있다. 즉, 전역으로 접근을 허용하는 가장 개방적인 접근 제어자이다. 사용 예: 주로 공용 API, 유틸리티 메서드 등 외부에서도 사..
이번 글에서는 Java에서 컬렉션 프레임워크가 무엇인지에 대해서 알아보자. JAVA의 컬렉션 프레임워크(Collection Framework)란? 컬렉션 프레임워크는 자바에서 데이터를 효율적으로 저장하고 관리하기 위해 제공하는 데이터 구조와 알고리즘의 표준화된 아키텍처이다. 주로 여러 개의 데이터를 효과적으로 처리하기 위해 사용되며, 데이터 추가, 삭제, 검색, 정렬 등의 작업을 용이하게 수행할 수 있도록 설계되어 있다. 1. 컬렉션 프레임워크 구조 java.util ├── Collection │ ├── List │ │ ├── ArrayList │ │ ├── LinkedList │ │ └── Vector │ ├── Set │ │ ├── HashSet..
메서드 오버로딩과 오버라이딩메서드 오버로딩(Method Overloading)과 메서드 오버라이딩(Method Overriding)은 둘 다 자바에서 메서드를 재정의하는 방식이지만, 사용 목적과 방식이 다르다. 자세하게 알아보자 1. 메서드 오버로딩 (Method Overloading) 정의 같은 이름을 가진 메서드를 여러 개 정의하는 것으로, 매개변수의 타입, 개수, 순서가 다르게 하여 구분한다. 특징- 같은 클래스 내에서 사용- 메서드 이름은 같지만, 매개변수 목록이 다르다.- 반환 타입은 오버로딩의 기준이 되지 않는다. 즉, 반환 타입만 다르고 매개변수가 동일한 경우 오버로딩이 성립하지 않는다. 사용목적오버라이딩과 같은 기능을 하지만, 다양한 매개변수를 받을 수 있도록 하여 코드의 가독성과 유지..