질문_lsucret - GANGNAM-JAVA/JAVA-STUDY GitHub Wiki
자바
- java가 가지고있는 특징 설명(Object-Oriented,Platform independent,High Performance,Multithreaded,Portable,Secure)
- JVM 메모리 구조 설명, JDK와 JRE의 차이는?
- 메서드 영역과 힙 영역의 차이점은 무엇인가요? (main 메서드)
- 인터페이스가 무엇인가요? 인터페이스 사용 이유. 인터페이스 언제 사용?
- 추상 클래스와 인터페이스의 차이점
- non-static 변수를 static 컨텍스트에서 접근할 수 있는가?
- static 키워드가 무엇이고 사용하는 이유가 무엇인가요? static 키워드를 변수와 메서드 말고 클래스에도 붙일 수 있다고 했는데요 클래스에 붙일 수 있나요? (중첩 클래스)
- Java에는 unchecked Exception과 checked Exception이 있는데 두 가지를 설명해주시고 차이점을 설명해주세요. 직접 정의해서 개발해본 경험이 있는지?
- Java8 사용해본 적이 있는지? Java8에서 추가된 기능은?
- 왜 자바는 플랫폼 독립적이라고 불리는가?
- private, static 예약어를 오버라이드할 수 있나? 왜 그런가?
- 오토박싱과 언박싱의 차이는?
- 오버라이딩과 오버로딩의 차이?
- pass by reference vs pass by value
- Volatile,Transient 변수의 사용목적?
- 정적 바인딩과 동적 바인딩의 차이?
- 래퍼 클래스란 무엇인가
- 싱글턴 클래스란 무엇이고 어떻게 만들 수 있는가
- 프로세스와 스레드의 차이
- 스레드를 생성하는 세 가지 방법을 말하고 장단점?
- 스레드의 상태 설명하라
- 스레드에서 wait, sleep 메서드의 차이?
- 데드락이란 무엇이고 데드락 없이 n개의 스레드가 n개의 리소스에 접근할 수 있는 방법은 무엇인가?
- java에서 HashMap이 동작하는 원리?
- hashcode()와 equals()가 중요한 이유?
- Array와 ArrayList, LinkedList 차이? 어떤상황에서 뭘 쓸것인가?
- Comparable 과 Comparator 차이?
- Enumeration과 Iterator interfaces의 차이?
- System.gc() 와 Runtime.gc()가 하는 일은?
- RMI란 무엇이고, RMI 아키텍처의 기본 원리는?
- HTTP response의 구조는?
- 쿠키란 무엇이고, 세션과의 차이점?
- 리플렉션이란 무엇이고, 예시를 들어 설명하라.
- String s = "test";와 String s = new String("test");의 차이점? 어떤게 더 좋은가?
스프링/JPA
-
스프링과 스프링 부트의 차이점은 무엇인가요?
-
MVC 동작 방식에 대해서 클라이언트의 요청부터 응답까지 순차적으로 이야기 해주세요
-
servlet과 dispatcherServlet의 차이?
-
스프링부트 데코레이터 중 intercepter, filter, ?? 세 가지의 차이점
-
DI가 무엇인가
-
Thread-Safe가 무엇인가, Thread-Safe하기 위해서는 어떻게 해야하는가?(동기화 기술)
얘기한 동기화 기술(synchronized, atomicXXX, lock, semaphore) 중에 성능 향상에 가장 도움이 되는 기술은 무엇인가?
DATABASE/SQL
- 기본인덱스와 보조 인덱스의 차이
- nosql과 sql 차이, CAP이론 설명
- 데이터베이스 성능 튜닝 해봤는지, 데이터베이스의 Query가 느리게 처리될 때 어떻게 해결할 것인가? (Slow Query)
- Slow Query를 어떻게 해결해야하나요?
- Slow Query로 로그를 출력하고 개선하기 위해 필요한 데이터는 어떻게 얻을것인가?
- Query 튜닝 어떻게 하냐?
- 데이터 모델링이란
- 성능을 위해서 테이블에 컬럼을 추가해서 사용하는가? 어떻게 사용하는가?
- 인덱스의 종류와 특징(Clustered Index/Nonclustered Index)
- sql 쿼리문으로 두번째로 높은 연봉을 받는 노동자를 찾으라
Infra/운영
- RESTFul API 란?
- TDD 란 무엇이며 어떠한 장점이 있는가?
- 함수형 프로그래밍이란?
- GET, POST 방식의 차이점
- CI/CD란 무엇인가, 도입해서 얻는 장점은?
- 협업할 때 중요한 것이 무엇인가?
Architecture/Design pattern
- MVC 패턴이란 무엇인가?
- Array vs Linked List
- Stack and Queue
- Tree
- Binary Tree
- Full Binary Tree
- Complete Binary Tree
- BST (Binary Search Tree)
computer science
- TCP 와 UDP 의 차이점
- HTTP1.1과 HTTP2의 차이점
- DNS round robin 방식
- 멀티스레드의 장점과 단점
- 가상 메모리의 출현배경과 하는일, Demand Paging, 페이지 교체 알고리즘에 대해 설명하시오.
- (컴퓨터 동기화)임계구역 문제란 무엇이고 이를 해결하기 위한 3가지 조건