온라인에 올라온 연습용 소스코드를 실행하고 설명하기 위한 페이지입니다.
예제코드는 https://github.com/iseohyun/java-tutorial에서 확인, 다운로드
받을 수 있습니다.
자바(java)란
java는 1995년 Sun Microsystems에서 개발했고, 2010년에 Oracle Corporation에 양도되었습니다. Oracle은 아래 표와 같이 꾸준히 업데이트를 지원하고 있습니다.
버전 | 발행년도 | 특징 |
---|---|---|
Java 8 | 2014 | 람다식, 스트림 API, 날짜 및 시간 API 등의 추가 |
Java 11 | 2018 | 모듈 시스템 도입, 라이브러리 및 기능 제거, G1 GC 개선, HTTP 클라이언트 API 등 |
Java 17 | 2021 | Sealed 클래스, 패턴 매칭, 지속적인 벤치마킹 등의 추가 |
Java 20 | 2023 | 레코드 패턴 및 패턴 매칭 스위치 표현식, 프로젝트 룸 관련 주요기능, JVM 및 네이티브 코드간 연결성 등 |
Oracle홈페이지에서 무료로 다운받을 수 있습니다. (...는 예제에서 사용될 예정)
자바 제품군 | 특징 |
---|---|
Java SE (Standard Edition) | 기본 자바 플랫폼, 일반적인 자바 개발에 사용됨 |
Java EE (Enterprise Edition) | 기업용 애플리케이션 및 웹 애플리케이션 개발에 사용됨, 서버 환경을 위한 추가 기능 제공 |
Java ME (Micro Edition) | 제한된 자원 환경에서 동작하는 임베디드 시스템 및 모바일 기기용 개발에 사용됨 |
Java FX | 리치 인터넷 애플리케이션 개발에 사용됨, 그래픽, 멀티미디어 등 다양한 기능 제공 |
Java Card | 카드 기반 애플리케이션 개발에 사용됨, 스마트 카드 및 보안 요구사항을 지원 |
java는 자바가상머신(JVM)에서 실행되며, JVM은 특정 플랫폼에 설치되어야 합니다.
java가상머신에서 수행된다는 것은, 컴파일 결과가 exe파일이 아닌 형태(.class; 바이트코드)로 출력된다는 의미이며, 바이너리를 직접 만드는 C보다 성능면에서 뒤떨어지나, JVM이 지원된다면 어디서든 수행가능한, 즉 범용성에서 앞선다고 볼 수 있습니다.


다른 언어와 비교
언어 | 컴파일 | 동작 |
---|---|---|
C | cl.exe(또는 gcc.exe)로 수행 | 결과물 직접 실행 |
Java | javac.exe로 수행 | java.exe를 통해 실행 |
python | py.exe로 실행 |
컴파일 방법
C:\Java_Example\BasicCode> java a_BasicType.A_HelloWorld
C:\Java_Example\BasicCode> javac -d a_BasicType.A_HelloWorld.java
C:\Java_Example\BasicCode> java a_BasicType.A_HelloWorld
Hello World!
C:\> javac hello.java
C:\> java hello
Hello~
용어
용어 | 설명 |
---|---|
JVM | Java Vertual Machine, 자바가상머신. 자바가 수행되기 위한 최소한의 장치 |
JRE | Java Runtime Environment, 자바가상환경. 자바가 수행되기 위한 환경, Java class library를 포함 |
JDK | Java development Kit, 자바개발환경. 컴파일도구, 디버깅도구를 추가 포함. |
IDE | Integrated Development Environment, 통합개발환경. 에디터 및 개발 편의기능을 패키지 형태로 제공되는 것 대표적인 java통합환경으로 Eclipse, IntelliJ IDEA, NetBeans등, vscode로 환경구성 가능(추가설정이 필요) |
환경설정
eclipse또는 vscode 둘 중 하나만 설치하면 됩니다.
- eclipse : 자바 개발자 전용으로 쓰기에 굉장히 편리합니다. C도 지원하기는 함.
- vscode : 다양한 개발환경을 목표로 개발된 툴입니다. 추가 설정을 해줘야 합니다. 인기가 좋은 편입니다.
eclipse
truble shooting :
- Github라이선스 문제 : https://joytk.tistory.com/58
- 노트북에서 실행이 안되는 문제 : https://gocoder.tistory.com/119
Visual Studio Code
약칭 vscode, 구글에서 'vscode'검색해서 설치하기
확장 프로그램(Extension)을 설치합니다.
편의 기능 | 설명 |
---|---|
Extension Pack for Java |
Language Support for java(TM) by Red Hat Debugger for Java Test Runner for Java Maven for Java Project Manager for Java IntelliCode |
TabOut(옵션) | ""등과 같이 자동완성 코드에서 탭을 통해, 완성코드를 스킵하는 기능 |
Dictionary Completion(옵션) | 영사전 자동 완성 기능 |
※ 한글 깨짐 문제 : x-windows-949 인코딩은 자주 사용하지 않는다고 판단한 한글을 임의로 제외시켰습니다. 그래서 일부 한글을 인식할 수 없는 문제가 있기 때문에, UTF-8(글로벌 공용)으로 바꾸어줄 필요가 있습니다. 해당설정은 preference > setting (ctrl + ,)에서 java jdk를 검색한 후에 edit setting.json에 다음과 같이 추가합니다.(만약 "java.jdt.ls.vmargs": 항목이 있으면 내용만 추가합니다.)
"java.jdt.ls.vmargs": "-Dfile.encoding=utf8",
git bash(옵션)
구글에서 'git download'검색해서 설치하기
본인 코드관리에 필요합니다. (예제코드 압축파일로 받을 수 있음)
코드 사이트 : https://github.com/iseohyun/java-tutorial [예제코드 다운로드]
위 코드를 직접 다운로드 받지 않아도, VS code를 통해서 자동으로 다운로드 받을 수 있습니다. 아래 [그림 1]과 같이 처음 열었을 때 화면에서, Clone Git
Repository
를 클릭합니다. 이후 나오는 대화창에서 다음을 붙여넣기 합니다.
https://github.com/iseohyun/Java-tutorial.git


git은 코드의 버전관리를 위해 가장 간결하게 사용되고 있는 프로그램입니다. 단축키는 ctrl + alt + G
로 열면 됩니다. 만약 다운로드가 되지 않는다면, ... > stash
> stash를 수행합니다.(에러 메시지: "please clean your repository working tree before checkout")
프로그램 동작 요령
기능명 | 단축키 | 설명 |
---|---|---|
빌드 | F5 | 프로그램 수행 run java를 단축키(shortcut)에 개별 등록하려면, '명령어 검색' 후 단축키에 'run java'를 검색하여 등록 |
명령어(command) 검색 | ctrl + shift + P | 사용 가능한 명령어를 나열함. 최근 사용한 명령어를 보여줌 |
브레이크 포인트 | F9 | 디버깅 시, 사용 |
다음 명령 수행 | F10 | 디버깅 시, 사용 |
코드 정렬 | alt + shift + F | 긁어온 코드 등을 내 코드에 맞게 정렬해줌 |
일괄 변경 | ctrl + H | 정규식 가능, 정규식에 의한 Select 후보군을 미리 보여줌 |
라인 이동 | ctrl + G | 브라우저와 디버깅 할 때, 라인번호로 바로 이동 |
편집점 이동 | Alt + 방향키 | 머물렀던 편집점을 옮겨다닐 때 유용 |
추천 단어 | ctrl + space | 보통은 자동으로 열리는데, 강제로 열 때 |
주석처리 | ctrl + / | 언어에 맞게 주석으로 토글해줌 |
코드 이동 | alt + ↑↓ | 선택된 코드를 집어서 위, 아래로 이동 |
호출기 이동 | F12 | 함수 원형으로 이동 |
단축키 | ctrl + K + S | 단축키 확인 및 변경, 키, 기능명 모두 검색 가능 |
실행해보기
아래 코드를 입력합니다.
(예제코드 보는 방법: ctrl + shift + E
를 한 뒤,
JAVA PROJECTS > BasicCode > Syntax > a_BasicType > A_HelloWorld 를 클릭합니다.)
새로 만들어서 사용하려면, new java를 클릭한 뒤에, 이름을 생성("helloWorld") 후에 타이핑 하면 됩니다.