1995년에 발표된 객체 지향적 프로그래밍 언어이며 아래와 같은 특징을 갖는다.
1. 간단하다
1. 자바는 C++에 가깝지만 훨씬 간단하다
2. 객체 지향적이다.
2. 숫자(int, float, long 등)나 논리값(true, false)를 제외한 거의 모든 것이 객체로 구성
3. 자바는 object 클래스에서 모든 클래스를 파생한다.
3. 인터프리터 언어이다.
1. 컴파일 언어인 동시에 인터프리터 언어이다.
2. 텍스트 소스를 컴파일해 2진 파일(클래스 파일)로 생성 후 클래스 파일 인터프리트하며 실행
4. 강력하다
3. 포인터 연산을 지원하지 않는다. (잘못된 주소 가르킬 가능성 사전 배제)
4. 사용이 끝난 리소스 시스템이 메모리에서 삭제하는 방식(리소스 관리)을 채택해 메모리 누출 고민 없음
5. 안전하다
1. 자료형 타입에 굉장히 민감(유형 정의 강고)
2. 컴파일 된 경우 실행 시 오류 발생 가능성이 타 언어에 비해 낮음
6. 플랫폼 독립적이다.
1. 자바 실행 파일은 이진 코드(클래스) 파일이므로 자바 런타임 설치된 시스템에서는 어디서나 자바 프로그램 실행 가능
2. 작성한 프로그램은 OS에 상관없이 실행 가능 (VM에 의해 실행되기 때문)
7. 멀티 쓰레딩을 지원한다.
8. 동적이다.
1. 하나의 모듈 갱신시 다른 모듈 모두 갱신할 필요 없음
2. 인터페이스가 모든 인스턴스 변수와 도구의 실행문 배제한 체 객체 간 상호작용 정의하기 때문
자바 코딩을 시작하기 전에 개발 환경을 먼저 세팅해보자.
개발 환경이란 자바로 프로그램을 만들 수 있는 컴퓨터 환경을 말하며, 프로그램 소스 작성 툴, 작성한 소스를 컴파일하는 프로그램 등을 설치해야 하는 것이다.
필자의 운영체제는 MAC OS(M1)이며, MAC용 패키지 관리 도구인 Homebrew를 사용해 JDK를 설치하겠다.
(Homebrew에 대한 설명은 여기서 확인 할 수 있다. )
JAVA 설치하기
1.1 adoptopenjdk/openjdk 추가하기
>brew tap adoptopenjdk/openjdk
1.2 설치 가능한 모든 JDK 찾기
> brew search jdk
==> Formulae
openjdk openjdk@17 jd cdk
openjdk@11 openjdk@8 mdk
==> Casks
adoptopenjdk
adoptopenjdk/openjdk/adoptopenjdk-jre
adoptopenjdk/openjdk/adoptopenjdk-openj9
adoptopenjdk/openjdk/adoptopenjdk-openj9-jre
...
adoptopenjdk/openjdk/adoptopenjdk8-openj9-jre
adoptopenjdk/openjdk/adoptopenjdk8-openj9-jre-large
adoptopenjdk/openjdk/adoptopenjdk8-openj9-large
adoptopenjdk/openjdk/adoptopenjdk9
gama-jdk
jdk-mission-control
microsoft-openjdk
oracle-jdk
oracle-jdk-javadoc
sapmachine-jdk
semeru-jdk-open
1.3 원하는 Java 버전 설치하기
>brew install --cask adoptopenjdk14
>brew install --cask adoptopenjdk16
1.4 자바 설치 위치 확인하기
>/usr/libexec/java_home -V
Matching Java Virtual Machines (4):
16.0.1 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 16" /Library/Java/JavaVirtualMachines/adoptopenjdk-16.jdk/Contents/Home
14.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 14" /Library/Java/JavaVirtualMachines/adoptopenjdk-14.jdk/Contents/Home
1.5 자바 버전 확인하기
>java -version
자바 버전 변경하기
brew를 통해 두가지 버전의 자바를 설치하였다. 이 경우 최신 버전을 기본값으로 하지만, 다른 버전으로 변경하는 방법은 아래와 같다.
2.1 bash_profile
에서 자바 버전 세팅하기
필자는 zsh
쉘을 사용하므로 ~/.zshrc
파일을 수정하도록 한다.
(*자신이 사용하는 쉘 확인은 >echo $SHELL 을 사용해 확인할 수 있다.)
>vi ~/.zshrc
# Java Paths
export JAVA_HOME_11=$(/usr/libexec/java_home -v16)
export JAVA_HOME_14=$(/usr/libexec/java_home -v14)
# Java 14
export JAVA_HOME=$JAVA_HOME_14
# Java 16
# 16버전을 사용하고자 하는 경우 아래 주석(#)을 해제하고 위에 14버전을 주석처리 하면된다.
# export JAVA_HOME=$JAVA_HOME_16
2.2 변경사항 반영하기
>source ~/.zshrc
마지막으로 현재 세팅된 바자 버전을 다시 확인해보도록 한다.
> java --version
IDEL은 Integrated Development and Learning Enviroment의 약자로 프로그래밍을 통합적으로 지원하는 개발환경이라하며, 이를 통해 소스 코드 및 에디터 및 디버깅, 자동화 등의 기능을 제공한다.
brew install --cask intellij-idea-ce
이렇게 idel도 설치를 마쳤다. mac에서 패키지 관리 도구인 Homebrew
를 사용하면 패키지 설치 및 제거가 용이하다.