ch01. 자바 시작하기

728x90

ch01. 자바 시작하기

1-1. 프로그래밍 언어와 JAVA

[프로그래밍 과정]

[프로그래밍 언어]

Java : 임베디드/웹/안드로이드/소프트웨어 개발 분야

C/C++ : 하드웨어 장치 제어 및 임베디드 sw분야

C++/C#: 데스크탑 앱, ASPNET기반 웹 sw분야

파이썬: 빅데이터 분석 및 머신러닝 sw분야

[자바 특징]

1) 모든 운영체제에서 실행 가능

2) 객체지향 프로그래밍 : 객체(부품)만들고, 객체들을 연결해서 더 큰 프로그램 완성 기법

3) 메모리 자동 정리

4) 무료 라이브러리 풍부

[자바 개발 도구: JDK] : Java Development Kit

  • JDK는 자바로 sw개발 시 필요한 실행환경(JVM) 및 개발도구(컴파일러 등) 제공하는 역할
  **<JDK 종류>**

  1) Open JDK

2) Oracle JDK : 안정성 높으므로 사용 多


1-2. 이클립스 개발 환경 구축

[이클립스]

: 무료 오픈 소스 통합 개발 환경 툴 (IDE)

: 자바 언어로 개발된 툴이므로 이클립스 실행을 위해서는 JDK가 필요

[워크스페이스]

: 이클립스 실행과 관련된 메타 데이터와 프로젝트 폴더가 저장되는 폴더

[퍼스펙티브와 뷰]

퍼스펙티브 : 이클립스 실행 시 전체 뷰들 묶어 이른는 말

뷰 : 이클립스 실행 시 내부에서 사용되는 작은 창 단위 ex. 콘솔 뷰


1-3. JAVA 프로그램 개발 과정

[자바 기본 프로그래밍 구조]

소스 파일(.java) -> 1차 javac 명령어 컴파일 -> 바이트 코드 파일(.class) 생성

                      -> 2차 java 명령어로 JVM 번역기 구동 -> 기계어로 번역 -> 프로그램 실행

[바이트 코드 파일과 자바 가상 기계 JVM]

  • 바이트 코드 파일 : 개발 완료된 자바프로그램 형태: javac 명령어로 컴파일된 바이트 코드 파일은 각 운영체제의 JVM을 통해 해당 운영체제에서 실행 가능한 기계어로 번역해서 실행한다. (모든 운영체제 실행 가능)
  • : (.class) 파일은 완전한 기계어가 아니기 때문에 JVM(자바 가상 기계) 번역기로 컴파일 거쳐 완전한 기계어로 번역되어야 운영체제에서 실행된다.
  • 자바 가상 기계(JVM) : Java Virtual Machine
  • : JDK에 포함되어 있는 번역 소프트웨어

[프로젝트 생성]

기본적으로 src파일에는 소스파일이 저장되고, bin파일에는 바이트 코드 파일 저장됨

: 프로젝트 생성 -> 패키지 생성 -> 클래스 생성 (소스코드 작성) -> 저장 시, 자동 컴파일

                      **-> 바이트 코드 파일 형태로 저장됨**

  **<module-info.java> : 모듈 기술자**

: requires java.se; // Java SE가 제공하는 모든 모듈 필요함을 알림

: 의존성 모듈 // Java SE 전체에 의존성을 가진다. 표준 API 전체 제공받는 효과

  **<패키지>**

: 자바는 기능별로 파일 관리하기 위해 패키지 사용

: 마치 파일 시스템의 폴더 역할과 비슷

[프로젝트 실행]

1) 이클립스에서 실행 ( 저장 후 Run 아이콘)

2) 명령 프롬프트에서 실행

[프로그램 소스 분석]

패키지 선언

클래스 선언 : 클래스 이름은 소스 파일명과 동일해야 함

메소드 선언

package sec03.exam02; //패키지 선언

public class RunStatementExample { //클래스 선언 ( public = 공개 클래스)

public static void main(String[] args) {//메소드 선언 (공개 정적 반환X main 메소드)

int x = 1;

int y = 2;

System.out.println(result);

[주석 사용]

  • 라인 주석 : //
  • 범위 주석 ; /.../
  • 도큐먼트 주석 : /*.../’

728x90

'Java > [문법]_Java(자바)' 카테고리의 다른 글

ch06. 클래스  (0) 2021.08.02
ch05. 참조 타입  (0) 2021.07.29
ch04. 흐름 제어문 (조건문과 반복문)  (0) 2021.07.29
ch03. 연산자  (0) 2021.07.29
ch02. 변수와 타입  (0) 2021.07.28