자바의 정석

[자바의 정석] ch1. 자바를 시작하기 전

주니어주니 2022. 8. 8. 23:47

1.자바란?

 

프로그래밍 언어

컴퓨터 프로그램(애플리케이션)을 만드는 데 사용

실행환경(JRE) + 개발도구(JDK) + 라이브러리(API) 제공

→ 쉬고 빠르게 애플리케이션 개발 가능

 

 

2.자바는 어디에 쓰이는가

 

PC 애플리케이션 (인텔리제이, 이클립스 등)

웹 애플리케이션 (스프링 프레임워크)

모바일 애플리케이션 (안드로이드)

빅 데이터 (hadoop)

게임(마인 크래프트), 과학, 소형기기 등

 

 

3.자바의 특징

  1. 배우기 쉬운 객체지향 언어: 프로그래밍언어 + 객체지향 개념 (객체지향 언어: C++, java, python,java script)
  2. 자동 메모리 관리: 가비지 컬렉터(GC)가 메모리를 자동으로 정리
  3. 멀티 쓰레드를 지원: 하나의 프로그램에서 동시에 여러 프로그램 이용
  4. 풍부한 라이브러리로 쉽게 개발 가능
  5. 운영체제에 독립적: 여러 운영체제에서 수정없이 사용 가능

 

4.자바 가상 머신(JVM)

 

자바 프로그램이 실행되는 가상 컴퓨터 (Virture Machine)

컴퓨터 ↔ os (windows) ↔ 일반 애플리케이션

컴퓨터 ↔ os (windows) ↔ JVM ↔ Java 애플리케이션

os와 독립적, 한번 작성하면 어디서든 실행 (윈도우, 맥, 리눅스 등)

 

 

5~6. 개발도구의 설치와 설정

 

jdk, 이클립스 설치

https://cafe.naver.com/javachobostudy (자바의정석 카페)

https://github.com/search?q=javajungsuk (자바의정석 깃허브)

‘javajungsuk_basic-master’ 파일 내 flash 반드시 전부 실행 해보기

새 프로그램 설치 시 환경변수 설정

: 설치한 프로그램 파일 내 bin 파일의 경로 복사 → 내 컴퓨터 → 속성 → 고급시스템 설정 → 환경변수 → path → 새로 추가 → 경로 붙여넣기

 

 

7. Java API 문서의 설치와 사용법

  • Java API : Java로 프로그램을 만드는 데 필요한 주요 기능을 미리 만들어서 제공
  • Java API 문서: Java API가 제공하는 기능에 대한 정보 제공 (html파일) = java 사전
  • 클래스 검색할 때 Java API 에서 검색하기
  • 특정 메소드가 어떤 클래스에 있는지 찾고싶을 때 INDEX 이용

 

8~9. 자바 프로그램 만들어보기 (JDK, 메모장 이용)

  • jdk1.8 → work 새폴더 생성 → 텍스트문서 생성 → Hello.java 뒤의 txt 지우고 메모장으로 오픈 → “Hello, world” 출력하는 코드 입력 후 저장 → 문서가 있는 경로 복사
  • → cmd창 → cd (+띄어쓰기) 경로붙여넣기 (cd: change directory 현재 디렉토리를 다른 디렉토리로 변경)
  • → dir 입력 (현재 디렉토리에 있는 모든 파일 뜸) → Hello.java 파일이 있는 것 확인
  • → javac Hello.java (자바 컴파일러로 컴파일) 입력 → 클래스 생성됨
  • → dir 입력→ Hello.class 파일 생성된 것 확인 : 컴파일러인 javac가 Hello.java 라는 파일을 읽어서 java virture machine이 알아들을 수 있는 기계어로 변환한 것
  • → java Hello 입력 → “Hello, world.” 출력된 것 확인
*클래스 만들 때, 파일명 붙일 때 첫번째 글자는 반드시 대문자
컴파일할 때와 달리 실행할 때는 확장자를 붙이지 않음. 따라서 hello 뒤에 .class 를 붙이지 않음 !

 

※ 정리
1. javac.exe - 자바 컴파일러. 사람이 작성한 문장을 기계어로 번역
                      소스파일(*.java)을 클래스파일(*.class)로 변환
2. java.exe - 자바 인터프리터. 자바 프로그램(클래스파일)을 실행
3. 클래스 - 자바 프로그램의 단위. 자바 프로그램은 클래스들로 구성

                  class 클래스이름   {   ← 클래스의 시작
                 ( 모든 문장은 클래스의 {}안에 있어야 함! )
                 }   ← 클래스의 끝

4. main메서드 - 자바 프로그램의 시작점. 이 메서드 없이 실행 불가

                          class 클래스이름 {
                              public static void main(String[] args)  {    ← main메서드의 시작
                              ( 실행할 문장을 넣는다. 첫 문장부터 순서대로 실행됨. )
                              }     ← main메서드의 끝
                           }

 

 

10~12. 이클립스 설치하고 실행하기

 

이클립스에서 자바 프로그램을 작성하는 순서

1. 프로젝트 생성
- 메뉴 file → new → java project
(이 때, 아무것도 건들지 않고 바로 생성하면 bin 안에 class 파일, src 안에 java 파일이 들어감)

2. 클래스 생성 - 프로젝트 이름 위 우클릭 → new → class (패키지 칸의 내용은 지우고 생성)

3. 소스파일의 작성 후 저장 (자동 컴파일 됨 → class파일이 생김)
* 파일 이름 앞에 *표시: 수정되었는데 아직 저장을 하지 않았을 때

4. 실행

 

Build 관련 메뉴 설명

* Build란?
- 소스 파일(*.java)로부터 프로그램을 만들어 내는 전 과정

* Project > Build All
- workspace의 모든 프로젝트를 빌드

* Project > Build Project
- 현재 프로젝트를 빌드 (변경된 소스 파일만 새로 컴파일)

* Project > Clean
- 이전 빌드의 정보를 모두 삭제 (모든 소스 파일을 새로 컴파일)

* Project > Build Automatically
- 소스 파일을 변경 후, 저장할 때마다 자동 컴파일

 

 

13~16. 이클립스 단축키, 자동완성기능, 주석

 

단축키, 자동완성, 주석

*ctrl+shift+L : 단축기 전체 목록보기
*ctrl+ +,- : 폰트 크기 증가/ 감소
*ctrl+D : 한줄 삭제
*ctrl+alt+down : 행단위 복사
*alt+shift+A : 멀티컬럼 편집모드
*alt+up, down : 행단위 이동
*ctrl+i : 자동 들여쓰기
*ctrl+/ : 주석(토글)
*시작부분 위에 /*, 끝부분 밑에 */ : 시작부터 끝부분까지 주석
*ctrl+space 자동완성 (편집: window -> preference -> java -> editor -> templates -> sysout 찾아서 edit -> sop로 수정)

 

 

17~19. 책의 소스와 강의자료 다운로드, 소스파일 가져오기, 내보내기

 

https://github.com/castello/javajungsuk_basic

 

GitHub - castello/javajungsuk_basic: 자바의 정석 기초편 관련 자료입니다.

자바의 정석 기초편 관련 자료입니다. Contribute to castello/javajungsuk_basic development by creating an account on GitHub.

github.com

 

  • 소스파일 가져오기: 자료 다운로드 → 이클립스 내 패키지 익스플로러에서 빈화면 우클릭 → import → general 내의 existing projects into workspace → 소스파일이 저장되어 있는 파일 선택 → copy projects into workspace 체크
  • 내보내기 : 빈화면 우클릭 → export → general 내의 archive file → 내보낼 파일 선택 후 → save in zip format → 저장할 위치 지정 (export할 프로젝트가 저장될 압축파일이름 지정)