JAVA

JAVA

Java 어노테이션이란? 사용 방법과 정의부터 메타데이터까지 이해하기

Annotation이란애노테이션은 코드에 추가적인 정보를 주석처럼 제공한다.하지만, 주석과 달리 애노테이션은 컴파일러나 런타임에서 해석될 수 있는 메타데이터를 제공한다.➡️ 애노테이션은 코드에 특정 정보나 지시를 추가하는 방법이다. Annotation을 사용하는 이유설정 간소화가독성과 유지보수성 향상반복적인 코드 작업을 대체할 수 있음관심사 분리 (AOP) 리플렉션 서블릿은 요청 URL과 메서드 이름이 같다면 해당 메서드를 동적으로 호출할 수 있다.하지만, 요청 이름과 메서드 이름을 다르게 처리하려면 다른 방법을 선택해야 한다. (예를 들어서 /site1 이라고 와도 page1()과 같은 메서드를 호출하고 싶을 수 있다.)public class Controller { // "/site1" pu..

JAVA

Java 스레드(Thread) 상태와 실행(run), 대기(sleep) 메서드 이해하기

Thread 상태NEW: 스레드가 아직 시작되지 않은 상태이다. (스레드 객체만 생성됐고, OS 스레드가 부여되지 않음)RUNNABLE: 스레드가 실행 중이거나 실행될 준비가 된 상태이다.BLOCKED: 스레드가 동기화 락을 기다리는 상태이다.WAITING: 스레드가 다른 스레드의 특정 작업이 완료되기를 기다리는 상태이다.TIMED_WAITING: 일정 시간 동안 기다리는 상태이다. (sleep으로 멈춘 상태)TERMINATED: 스레드가 실행을 마친 상태이다. Thread 실행start() 메서드는 스레드를 실행하는 메서드이다.run() 메서드가 아니라 반드시 start() 메서드를 호출해야 한다. → 그래야 별도의 스레드에서 run() 코드가 실행된다.run() 메서드는 일반 메서드 호출처럼 기존에 ..

JAVA

Java 예외 처리: try-catch-finally와 try-with-resources

try-catch 예외 처리Java에서 try-catch-finally 구문은 예외 발생 여부와 관계없이 안정적인 자원 정리와 오류 대응 로직을 구성할 수 있는 블록입니다. 기본 구조try { // 예외가 발생할 수 있는 코드} catch (ExceptionType e) { // 예외 처리} finally { // 예외 발생 여부와 상관없이 항상 실행}try: 예외가 발생할 수 있는 코드 작성catch: 특정 예외 타입과 처리할 예외 로직 작성finally: 예외 발생 여부에 관계없이 항상 실행되어야 코드 작성 동작 순서public void run() { try { System.out.println("1. try"); int result = 10 / 0; /..

JAVA

OOP란 무엇인가? 객체지향 개념과 SOLID 원칙 쉽게 이해하기

OOP란객체지향 프로그래밍(Object-Oriented Programming)은 현실 세계를 객체(Object)로 추상화하여 프로그램을 설계하고 구현하는 방식입니다. 각 객체는 데이터(속성)와 행동(메서드)을 가지며, 객체 간의 메시지 전달을 통해 프로그램이 동작합니다.💡 객체 = 상태 + 행동 클래스와 객체의 차이클래스는 객체를 만들기 위한 설계도이다. 객체는 현실 세계의 개념을 소프트웨어적으로 모델링한 것으로, 클래스 기반으로 생성되어 상태와 행동을 표현한다.(메모리에 할당된 인스턴스) OOP의 4대 특성1. 캡슐화 (Encapsulation)데이터를 외부로부터 숨기고, 필요한 인터페이스만 공개한다.정보 은닉을 통해 객체 간의 결합도를 낮추고, 변경에 유연하게 합니다.객체의 값을 직접적으로 변경할 ..

kylo
'JAVA' 카테고리의 글 목록