분류 전체보기99 [CS 면접 기본 - 자바] 11. JDK , JRE , JVM에 대해서 알려줘 1. JRE (Java Runtime Environment)JRE는 자바 프로그램을 실행하기 위한 환경입니다.**JVM (Java Virtual Machine)**과 라이브러리 클래스, 기타 자바 애플리케이션을 실행하기 위한 필수 구성 요소를 포함하고 있습니다.구성 요소:JVM (Java Virtual Machine): 자바 바이트코드를 실행하는 역할을 함.클래스 라이브러리: 자바 애플리케이션에서 사용하는 표준 라이브러리.클래스 로더: 자바 클래스 파일을 JVM에 로드하는 역할.2. JDK (Java Development Kit)JDK는 자바 애플리케이션을 개발하고 실행하기 위한 도구와 라이브러리를 제공합니다.JRE를 포함하고 있으며, 그 외에 컴파일러(javac), 디버거(jdb), 아카이버(jar) .. 2024. 10. 27. [CS 면접 기본 - 자바] 10. JVM에 대해서 알려줘 jvm : 가비지 컬랙터 / 실행엔진 / 클래스 로더 / 메모리(runtime data area) 4가지 영역으로 이뤄짐. 자바 어플리케이션 실행 방법 MAC WIN 위에 자바가 미리 짜놓고 그 위에 사용자가 짤 수 있도록 해놓음 MAC, WIN 위에 자바가 미리 짜놓은 곳이 JVM이라고 한다. 그 위에서 공통된 자바소스를 짜면, 환경에 영향을 받지 않는다. java -컴파일 -> 클래스 파일 여기가 바이트 코드다. 이거를 JVM이 읽어서, class loader를 통해 자바의 메모리 (Runtime Data area)올리고, 실행엔진이 동작시킨다. 정리) 컴파일러가 java를 클래스 파일로 바꾸는데 이 바꾼코드를 바이트 코드라고 합니다. 이 바이트 코드는 JVM의 클래스 로더를 통해서.. 2024. 10. 27. [CS 면접 기본 - 자바] 9. 인터페이스와 추상클래스의 차이가 뭘까? - 추상 클래스 : abstract로 지시자로 정의되며, 추상메소드가 하나이상 포함 (상속을 위한 것) => 강아지와 고양이를 예로 공통점은 짖는다는 특징 : => 차이점은 짖는 소리가 다르다. => 짖는 소리에 대한 정의는 Dog 객체, Cat 객체 다르게 해주어야하기 때문에, 동물이라는 추상클래스를 만들고, 거기에 공통 특징은 일반메소드로 구현하고 차이점은 추상 메소드로 정의만 한 뒤, 상속 받은 자식 클래스가 구체적인 구현을 맡긴다. - 인터페이스 : interface 지시자로 정의하며 모든 메소드가 추상메소드로 정의(보장을 위한 것) 인터페이스는 정의만 넣어두고 각 클래스는 그 기능을 구현하도록 강제한다. 다중 상속이 가능하다. interface swim, fly 등 다중으로 상속.. 2024. 10. 27. [CS 면접 기본 - 자바] 8. 자바의 버전은 무슨 차이가 있을까? Java 8: 함수형 프로그래밍, Stream API, 새로운 날짜/시간 API, Optional 클래스 도입.Java 11: 장기 지원 버전으로 HTTP Client API, String 메서드 개선, 오래된 기능 제거. LTS 버전 2014, 2018녀에 출시, 1) 람다 표현식을 사용함.int plus(int a) { return a = a+3; } = (a) -> {a+3}2) STREAM : 병열처리 지원 for문, while 문 대신STREAM() , filter를 사용하여서 반복문을 처리해서 속도가 더 빨라지게 됩니다. (병열처리라 조금 더 빠르게 처리가 된다.) 3) 인터페이스 : 3) 인터페이스 기능 의 개선 - default 매소드 정의가 가능해짐. 원래는 추상 매소드만 .. 2024. 10. 27. [CS 면접 기본 - 웹의 시작 ] 6. REST API는 뭘까? 설계시 고려사항은? REST API는 Representational State Transfer의 약자로, 웹 서비스 아키텍처 스타일 중 하나입니다. REST는 클라이언트와 서버 간의 통신을 간단하고 일관된 방식으로 설계하기 위해 만들어졌으며, 주로 HTTP 프로토콜을 사용하여 자원(Resource)을 정의하고, 이를 전송하는 방법을 규정합니다. REST API를 통해 애플리케이션은 서버의 자원을 생성, 읽기, 업데이트, 삭제(CRUD) 작업을 수행할 수 있습니다.REST의 주요 특징REST 아키텍처 스타일의 API는 몇 가지 주요 원칙과 특징을 따릅니다.자원의 표현(Resource)REST에서는 서버의 자원(예: 사용자 정보, 게시물, 제품 등)을 URL을 통해 명확하게 식별합니다.각 자원은 고유한 URI(Uniform R.. 2024. 10. 27. [CS 기본 - 웹의 시작 ] 5. http통신에서 동기와 비동기의 차이는 뭘까? HTTP 통신에서 **동기(Synchronous)**와 **비동기(Asynchronous)**의 차이는 요청을 보낸 후 응답을 기다리는 방식에 있습니다. 이 차이점은 클라이언트와 서버 간의 통신에서 처리 흐름과 대기 방식에 영향을 줍니다.1. 동기(Synchronous) 통신동기 통신에서는 클라이언트가 서버에 요청을 보낸 후, 서버로부터 응답을 받을 때까지 기다립니다. 이 동안 클라이언트는 다른 작업을 수행하지 않고, 응답을 받을 때까지 대기 상태가 됩니다.즉, 요청 → 응답의 순서가 보장되며, 응답이 올 때까지 클라이언트의 흐름이 멈추는 방식입니다.동기 통신의 특징단순한 흐름 제어: 요청과 응답이 차례대로 이루어져 흐름을 관리하기 쉽습니다.응답 시간에 의존적: 서버의 응답이 늦어지면, 그만큼 클라이언트.. 2024. 10. 27. 이전 1 2 3 4 5 6 ··· 17 다음