면접 CS 정리 Day 6 (풀스택 / Java·Spring·React)
Q1. == vs equals
문제==이랑 equals 차이 한 줄씩. (문자열 비교 기준)
답
==: 주소(참조) 비교equals: 값(내용) 비교
문자열은 equals로 비교한다.
Q2. TCP vs UDP
문제
TCP랑 UDP 차이 한 줄씩, HTTP는 보통 둘 중 뭐 위인지?
답
- TCP: 연결 지향, 신뢰성 있는 전송 (순서·재전송)
- UDP: 연결 없음, 신뢰성보다 속도. 스트리밍 등에 사용
- HTTP는 보통 TCP 위 (HTTP/1.1, HTTP/2)
보너스: HTTP/3는 QUIC(UDP 위). 모르면 “HTTP는 보통 TCP”만 말해도 OK.
Q3. synchronized
문제synchronized가 뭐 하는 키워드인지 한 줄, 너무 많이 쓰면 생기는 문제 하나?
답
코드 블록/메서드를 한 번에 한 스레드만 실행하게 잠근다.
많이 쓰면 스레드 대기가 늘어 성능이 떨어지고, 잘못 잠그면 데드락이 날 수 있다.
(주된 문제는 메모리 낭비가 아님)
Q4. Session vs JWT
문제
세션(Session) 방식 인증이랑 JWT 차이? 장단 한 가지씩.
답
- 세션: 서버가 로그인 상태를 보관
- 장점: 로그아웃·강제 만료 제어가 쉬움
- 단점: 서버/세션저장소 부하, 다중 서버면 세션 공유 필요
- JWT: 클라이언트가 토큰을 보유, 서버는 검증 위주
- 장점: 서버 확장에 유리
- 단점: 토큰 폐기가 어렵고 탈취 시 위험
→ access는 짧게, refresh로 재발급
세션은 부하를 “줄이는” 방식이 아니라, 서버에 상태를 두므로 부하가 생길 수 있다.
Q5. ArrayList vs HashSet
문제ArrayList vs HashSet 중복 / 순서 기준으로.
답
ArrayList: 중복 허용, 순서 보장, 인덱스로 접근HashSet: 중복 불허, 순서 보장 안 함
Q6. React key
문제
React 리스트에서 key에 index 대신 id를 쓰는 이유?
답
삽입·삭제·순서 변경 시 index key는 React가 항목을 잘못 매칭할 수 있다.
그래서 고유한 id를 쓴다.
Q7. GC
문제
GC(Garbage Collection)가 뭔지 한 줄.
개발자가 객체를 직접 메모리에서 안 지워도 되는 이유는?
답
더 이상 참조되지 않는 객체를 GC가 자동으로 회수한다.
그래서 C처럼 free를 직접 호출하지 않아도 된다.
오늘 한 줄 암기
==주소 /equals값- HTTP는 보통 TCP
synchronized= 한 스레드만, 과다 사용 시 성능↓·데드락- 세션 = 서버 상태 / JWT = 클라이언트 토큰
- ArrayList 중복O·순서O / HashSet 중복X·순서X
다음 목표
- Session vs JWT를 “부하·확장·폐기” 키워드로 말하기
synchronized부작용을 메모리로 말하지 않기
'기타 > CS 질문' 카테고리의 다른 글
| # 면접 CS 정리 Day 8 (풀스택 / Java·Spring·React) (0) | 2026.08.12 |
|---|---|
| # 면접 CS 정리 Day 7 (풀스택 / Java·Spring·React) (0) | 2026.08.12 |
| # 면접 CS 정리 Day 5 (풀스택 / Java·Spring·React) (1) | 2026.08.05 |
| # 면접 CS 정리 Day 4 (풀스택 / Java·Spring·React) (0) | 2026.08.03 |
| # 면접 CS 정리 Day 3 (풀스택 / Java·Spring·React) (0) | 2026.07.31 |
