Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- jwttoken
- 구글 OAuth login
- JavaScript
- 빈 조회 2개 이상
- 프로그래머스
- 개발자부트캠프추천
- 디자인패턴
- 전략패턴 #StrategyPattern #디자인패턴
- 단기개발자코스
- spring batch 5.0
- infcon 2024
- 항해99
- 1주일회고
- TiL
- Python
- KPT회고
- 취업리부트코스
- 파이썬
- 빈 충돌
- 커스텀 헤더
- DesignPattern
- 코딩테스트 준비
- 인프콘 2024
- @FeignClient
- 개발자 취업
- 프로그래머스 이중우선순위큐
- Spring multimodule
- 99클럽
- 디자인 패턴
- jwt
Archives
- Today
- Total
m1ndy5's coding blog
ABOUT JAVA, 환경 변수 등록 본문
자바의 특징
- 플랫폼 독립성
- 다른 플랫폼을 사용하는 컴퓨터는 서로 다른 기계어를 사용 -> 다른 플랫폼에서 사용하는 기계어는 알아듣지 못함
ex) 윈도우 실행파일(.exe)은 윈도우 플랫폼에서는 동작하지만, 다른 플랫폼에서는 동작하지 않음 -> 플랫폼 종속성 - 하나의 프로그램이 모든 플랫폼에서 실행 가능 -> 어떻게?
- 자바 가상 머신(JVM) 덕분
- JVM을 설치하면 자바에서 만든 .class 파일을 실행하게 해주는 가상 컴퓨터를 올려 놓는것과 마찬가지
- 다른 플랫폼을 사용하는 컴퓨터는 서로 다른 기계어를 사용 -> 다른 플랫폼에서 사용하는 기계어는 알아듣지 못함
- 객체지향 언어
- 함수형 코딩 지원
- 분산 처리 지원
- 멀티 쓰레드
자바 개발 도구(JDK) & 자바 실행 환경(JRE)
JDK란?
- 자바를 이용해 프로그램을 개발하는 데 필요한 도구를 모아 둔 집합
JRE란?
- 완성된 프로그램을 실행하는 데 필요한 환경
즉, JDK를 가져와 프로그램을 완성하고 JRE 위에서 실행하면 프로그램이 돌아감
JDK를 설치한 이후에는 운영체제에 JDK의 위치를 알려주어야 함
-> 환경 변수 등록
- 시스템 환경 변수 편집 클릭
- 고급 > 환경 변수
- 시스템 변수 > 새로 만들기
- JAVA_HOME 등록
- Path > 편집
- 새로 만들기 > %JAVA_HOME%\bin
- CLASSPATH 추가
자바 소스 코드의 실행 과정
- 소스 파일(.java)을 작성 후 컴파일
- JVM에서 동작하는 바이트 코드(.class)가 생성
- JVM이 운영체제에서 메모리를 할당받음
- 자바 프로그램 실행
JVM의 메모리 영역
- 메모리의 메서드 영역은 class 영역, static 영역, final 영역이라고도 부름
- 메모리 할당 이후 실행파일인 바이트 코드는 메서드 영역에 로딩되고 클래스 내에 포함되어 있는 main() 메서드를 실행함
'백엔드 with java > java' 카테고리의 다른 글
String VS StringBuffer (0) | 2024.03.25 |
---|---|
람다식 (0) | 2023.12.12 |
ABOUT SERVLET, WAS, SERVLET CONTAINER (0) | 2023.06.22 |
자바 클래스 & 객체 (0) | 2023.05.29 |