Skip to content

Latest commit

 

History

History
220 lines (111 loc) · 4.31 KB

File metadata and controls

220 lines (111 loc) · 4.31 KB

Java (자바)

카테고리: 프로그래밍 언어 <- 면접 질문 목록으로 돌아가기


JVM과 기본 개념

JAVA-001

JVM의 구조와 동작 원리에 대해 설명해주세요.

JAVA-002

JVM의 메모리 구조(Heap, Stack, Method Area 등)를 설명해주세요.

JAVA-003

Garbage Collection의 동작 원리와 종류에 대해 설명해주세요.

JAVA-004

G1 GC와 다른 GC 알고리즘의 차이점은 무엇인가요?

JAVA-005

Java의 클래스 로딩 과정을 설명해주세요.


키워드와 문법

JAVA-006

static 키워드의 의미와 사용 시 주의사항은 무엇인가요?

JAVA-007

final, finally, finalize의 차이점을 설명해주세요.

JAVA-008

추상 클래스와 인터페이스의 차이점과 사용 시나리오를 설명해주세요.

JAVA-009

Java 8 이후 인터페이스의 default 메서드와 static 메서드에 대해 설명해주세요.

JAVA-010

Checked Exception과 Unchecked Exception의 차이점은 무엇인가요?

JAVA-011

try-with-resources 구문의 동작 원리를 설명해주세요.


객체와 메서드

JAVA-012

equals()와 hashCode()의 관계와 오버라이딩 시 주의사항은 무엇인가요?

JAVA-013

String, StringBuilder, StringBuffer의 차이점을 설명해주세요.

JAVA-014

Java의 Generic에 대해 설명하고, Type Erasure란 무엇인가요?

JAVA-015

Comparable과 Comparator의 차이점을 설명해주세요.


Collection Framework

JAVA-016

Java의 Collection Framework 구조를 설명해주세요.

JAVA-017

ArrayList와 LinkedList의 차이점과 사용 시나리오는 무엇인가요?

JAVA-018

HashMap의 동작 원리와 해시 충돌 해결 방법을 설명해주세요.

JAVA-019

ConcurrentHashMap의 동작 원리와 HashMap과의 차이점은 무엇인가요?


동기화와 스레드

JAVA-020

Java의 동기화 방법(synchronized, volatile, Atomic 클래스 등)을 설명해주세요.

JAVA-021

volatile 키워드의 의미와 사용 시나리오는 무엇인가요?

JAVA-022

Java Memory Model에 대해 설명해주세요.

JAVA-023

ThreadLocal의 동작 원리와 주의사항은 무엇인가요?

JAVA-024

Executor Framework와 Thread Pool에 대해 설명해주세요.

JAVA-025

Fork/Join Framework의 동작 원리를 설명해주세요.


Stream과 함수형 프로그래밍

JAVA-026

Java의 Stream API 동작 원리와 병렬 처리 방법을 설명해주세요.

JAVA-027

Optional 클래스의 필요성과 올바른 사용 방법은 무엇인가요?

JAVA-028

Functional Interface와 Lambda Expression에 대해 설명해주세요.

JAVA-029

Method Reference의 종류와 사용 방법을 설명해주세요.

JAVA-030

CompletableFuture의 동작 원리와 사용 방법을 설명해주세요.


리플렉션과 어노테이션

JAVA-031

Java의 리플렉션(Reflection)이란 무엇이고 언제 사용하나요?

JAVA-032

동적 프록시(Dynamic Proxy)의 동작 원리를 설명해주세요.

JAVA-033

Annotation의 동작 원리와 커스텀 Annotation 작성 방법은 무엇인가요?


직렬화

JAVA-034

Java의 직렬화(Serialization)와 역직렬화에 대해 설명해주세요.

JAVA-035

serialVersionUID의 역할은 무엇인가요?


최신 Java 기능

JAVA-036

Java의 모듈 시스템(Java 9+)에 대해 설명해주세요.

JAVA-037

var 키워드(Java 10+)의 사용과 제한사항은 무엇인가요?

JAVA-038

Record 클래스(Java 14+)의 특징과 사용 시나리오를 설명해주세요.

JAVA-039

Sealed Class(Java 17+)란 무엇이고 왜 필요한가요?

JAVA-040

Pattern Matching(Java 14+)의 개선사항을 설명해주세요.

JAVA-041

Virtual Thread(Project Loom)란 무엇이며, 기존 Platform Thread와 어떤 차이가 있나요?

JAVA-042

Virtual Thread의 도입으로 동시성 프로그래밍이 어떻게 변화하나요?

JAVA-043

GraalVM의 Native Image 컴파일이란 무엇이며, 어떤 장단점이 있나요?

JAVA-044

Sequenced Collections 인터페이스(Java 21+)란 무엇이며, 어떤 문제를 해결하나요?

JAVA-045

Switch Expression과 기존 Switch Statement의 차이점을 설명해주세요.