1. 자바란?
- 1991년 제임스 고슬링에 의해 만들어진 객체 지향 프로그래밍 언어
- '한 번 작성하면 어디서든 실행된다'는 목표를 가지고 만들어졌다.
[※ 참고하기 객체지향과 절차지향이란?]
(1) 절차지향(PP, procedure programming) : 하나씩 절차에 따라 코드를 작성하는 것 (순서대로 쓰는)
- 절차지향은 "순서"에 따라 "데이터"를 어떻게 입출력할 건지 고려하여 코드를 작성한다.
- C언어의 경우, 절차지향언어로 잘 알려져 있는데,
C언어는 3세대 컴파일러 언어로, 한 번 컴파일을 하면 그 자체를 컴퓨터가 통으로 읽는다.
그렇기에 소스코드도 #include, 프로토타입을 선두에 먼저 쓰고, 차곡차곡 코드를 작성해준다.
(2) 객체지향(OOP, object oriented programming) : 객체(속성+기능)을 꺼내 쓰는 것(골라쓰는)
- 객체지향은 절차지향과 다르게 속성과 기능들을 하나로 묶어서 객체로 만든다.
- 과거 우주항공이 발달되던 시절,
실제 세계는 여러 객체가 서로 상호작용하며,
각 객체 내에는 자신 고유의 속성과 기능이 존재한다는 것을 알고 객체지향언어를 만들어냈다.
(3) 절차지향언어와 객체지향언어는 대립된 관계가 아니다.
- 자바를 쓰더라도 절차적으로 코드를 짤 수 있다.
2. JDK,JRE 설치하기(운영체제별로 상이)
[설치 순서 요약]
[1] 내 컴퓨터의 운영체제 사양 확인(32bit or 64bit)
[2] JDK, JRE 설치 (Oracle에서 JDK installer를 설치하면 JRE도 같이 설치된다)
[3] 시스템 환경변수 설정하기
(1) 내 컴퓨터의 운영체제 사양 확인(32bit or 64bit)
- 내 컴퓨터 > 내PC > (우측마우스) 속성
- 장치사양 > 시스템 종류 확인
(2) JDK, JRE 설치
- Oracle JDK 설치파일 다운로드 링크 : Oracle, https://www.oracle.com/java/technologies/downloads/
- 위 링크는 영어다. 어려우니 페이지에서 설치파일 찾는법을 적어보았다.
[0] java 버전을 먼저 고른다. - java 8, java 11, java 17....
(현장에서는 java 8이 자주 쓰이므로 java8을 다운하는 것이 좋다 한다..)
[1] 운영체제 탭(Linux/macOS/Windows)에서 내 컴퓨터의 운영체제를 선택(ex. windows)한다.
[2] 운영체제 크기(32bit or 64bit)에 따라 파일 다운로드
* Compressed Archive = 압축 버전
* Installer = 설치
// 아래 이미지에 형광색 표시는 Compressed에 했는데, Installer로 설치하면 된다.
[ ※ 참조하기 : JDK,JRE,JVM은 뭐고, 왜 JDK는 운영체제마다 설치파일이 다를까? ] (1) JDK,JRE,JVM이란? - java언어는 '한 번 실행하면 어디서든 작동'되기 위해 만들어진 언어이다. 그렇기에 java언어 자체는 어느 운영체제이건 독립적으로 작동하는 것이 맞다. - JDK는 개발자를 위해 만들어진 개발용 키트다. 우린 JDK를 통해 컴파일을 할 수 있고, 개발툴을 사용할 수 있다. - JRE는 자바 런타임 환경을 말하는 것으로, JDK를 설치할 때 같이 설치되며, 여러 라이브러리와 각종 파일을 담고 있다. (사용자용은 JRE만 별도로 설치 가능) - JVM은 자바 가상 머신을 말하는 것으로, 이 JVM이 JDK의 심장이며, 프로그램을 운영체제에 맞게 실행하는 역할을 한다. - JDK 설치파일이 운영체제마다 달랐던 이유는, 각 운영체제에 맞춰 이 jdk가 각각 조금씩 달랐기 때문이다. (쉽게 말해 이렇다. 초콜릿을 만들 때, 같은 카카오 재료(자바)를 쓰더라도, 중간에 어떤 공정과정(각 운영체제별 JDK)을 거치느냐에 따라 단짠이 좋은 이(Windows)에게 맞을 수 있고, 아니면 쌉쌀한 쓴맛이 좋은 이(Unix)에게 맞을 수도 있다.) * 참고 이미지 출처 : https://codevang.tistory.com/86 (2) JDK/JRE의 JVM이 작동되는 과정 - 가정 : 개발자가 컴퓨터에서 프로그램 1,2,3...을 개발했다. - 개발 중> JDK에서 각각의 프로그램에 대해 컴파일링 **컴파일 시 문자의 인코딩도 함께 이루어진다. **java -encoding utf-8 hello.java : java언어로 작성한 소스코드의 문자를 jdk가 컴파일 시 UTF-8 형식으로 인코딩 - 실행 시> 프로그램 1,2,3... 각각 실행 시, 컴퓨터 내 JRE에 따라서 JVM 1,2,3... 이 각각 형성되어 구동 (3) 운영체제에서 명령어를 작성해서 자바가 잘 설치되었는지 확인하는 방법 : java -version, javac -version 을 작성해서 자바가 잘 설치되었는지 확인 |
3. 시스템 환경 설정하기
※ 참조 : https://whitegom.tistory.com/3
(1) [시스템 속성]에서 [환경변수]창 열기
- 환경 설정 접근 경로1 : 제어판>시스템및보안>시스템>고급시스템설정>고급>환경변수
- 환경 설정 접근 경로2 : 윈도우 탐색기 > "시스템 환경 변수 편집" 검색>고급>환경변수
(2) JAVA_HOME 변수값 만들기
[1] [새로 만들기]를 누르고
[2] 변수명을 JAVA_HOME으로 한 뒤, java.exe와 javac.exe 위치의 상위 폴더 경로를 입력
[3] [확인]을 누른다.
[※ 여기서 잠깐! ~~~에 대한 사용자변수(U)와, 시스템 변수(S)는 뭘까?] - 컴퓨터를 쓸 때, 같은 운영체제 내에서 사용자가 여러명이 있을 수 있다. - 지금 여기에서의 특정 사용자를 위한 변수를 사용자변수라 하고, 모든 사용자를 위한 공통 변수를 시스템 변수라 한다. |
(3) PATH에 자바 설치 위치 입력하기
[1] Path를 더블클릭
[2] java.exe와 javac.exe가 있는 폴더경로까지 입력 // %JAVA_HOME%\bin
4. 시스템 환경 설정이 잘 되었는지 확인하기
(1) JAVA_HOME 변수가 잘 입력되었는지 확인 -- 명령인자 echo 사용 (상세 경로 출력)
(2) path가 잘 설정되었는지 확인 -- path 입력 또는, java/javac입력
▼ cmd에 path를 입력하니, 아래와 같이 java.exe이 설치된 경로가 나타난다.
▼ cmd에 java를 입력하니, 아래와 같이 나온다.
- path가 잘 설정되지 않으면, "내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다"가 뜬다.
5. 시스템 환경 설정에서 "클래스 환경 변수" 추가하기
(1) 클래스 환경 변수 -- CLASSPATH = . //내 프로그램을 기준으로 다른 클래스를 참조하겠다.
. : 현재 경로 .. : 상위 경로 |
[※ 참고하기 : cmd에서 위치 이동하는법 [cd] 사용]
. : 현재 경로 .. : 상위 경로 \ : 이 드라이브의 맨 앞 cd : change directory |
[※ 참고하기 : 시스템 환경 설정을 왜 해야할까?] - cmd의 default 경로 : C드라이브>사용자(user)>현재사용자명 - JDK을 다운로드하면 보통 C드라이브>programe files>java에 파일들이 설치된다. - 그러나 앞서 말했듯 cmd의 default위치는 user명이고, 우리가 저장할 소스코드는 컴퓨터 내에 어디에든 있을 수 있다. - 컴퓨터는 바보라, path 지정 없이는 컴파일하는 javac.exe나, 실행하는 java.exe의 위치를 명시해야 그게 뭔줄 알고 작업을 한다. ▼ path 설정을 안 하면, 아래처럼 " "안에 javac.exe의 상위 경로를 모두 치고 + .java를 해야 컴파일이 된다. - 이렇기 때문에, 컴퓨터의 어느 위치에 있더라도, java.exe와 javac.exe가 접근할 수 있게 구태여 path 설정을 해준 것이다. |
'Language > Java' 카테고리의 다른 글
[자바의 정석_복습] 객체지향 프로그래밍1 - 클래스(변수,메서드) (0) | 2022.02.24 |
---|---|
[자바의 정석_복습] Chapter5. 배열 -- String 문자열을 모스부호로 바꾸기 (0) | 2022.02.17 |
[쉽게 배우는 자바1_복습] 명령프롬프트에서 자바 실행하기 (0) | 2022.02.09 |
[자바_복습] 프로그램 실행구조/변수/연산자 (0) | 2022.02.02 |
[자바_복습] 명령프롬프트에서 자바 실행하기, 이클립스 실행하기 (0) | 2022.02.02 |