Notice
Recent Comments
Recent Posts
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Today
Total
관리 메뉴

기록 > 기억

[JAVA] 자바 프로그램 본문

IT국비지원

[JAVA] 자바 프로그램

BY SON 2021. 10. 22. 22:47

자바 프로그램

 

● 자바의 특징

① 이식성이 높음 → 자바로 개발된 프로그램은 JRE만 설치되어 있다면 OS 상관없이 실행가능

 

                                                      *.java  

                                          컴파일     ↓

                                                     *.class  

                                              ↙       ↓       ↘

                                     window    linux/unix    mac 

                                         

② 객체지향 언어 → 객체들을 만들고 객체끼리 서로 조합해서 프로그래밍 (캡슐화, 상속, 다형성)

 

③ 메모리 자동 관리 

 

객체 생성시 메모리를 자동으로 할당하고, 객체를 다 사용하고 나면 가비지 컬렉터가 객체를 제거해줌 

(개발자가 메모리를 관리할 필요가 없음!)

 

● 자바 프로그램 동작원리

① 자바 소스코드 작성

class HelloWorld {
	public static void main(String[] args) {
		System.out.println("Hello world");
	}
}

 

② 컴파일러(javac.exe)를 통해 클래스 파일(바이트 코드) 생성

C:\Users\byson>cd c:\test

c:\test>dir
2021-10-23  오후 10:09    <DIR>          .
2021-10-23  오후 10:09    <DIR>          ..
2021-10-23  오후 10:08               106 HelloWorld.java
               1개 파일                 106 바이트
               2개 디렉터리  421,017,387,008 바이트 남음

c:\test>javac HelloWorld.java

 

③ JVM을 구동(java.exe)시켜 클래스 파일을 기계어로 변환시키고 실행

c:\test>dir
2021-10-23  오후 10:10    <DIR>          .
2021-10-23  오후 10:10    <DIR>          ..
2021-10-23  오후 10:10               425 HelloWorld.class
2021-10-23  오후 10:08               106 HelloWorld.java
               2개 파일                 531 바이트
               2개 디렉터리  421,017,387,008 바이트 남음

c:\test>java HelloWorld
Hello world

c:\test>

※ 컴파일 할 때마다 콘솔창 열어서 컴파일 하기 귀찮음 → 이클립스 사용하면 저장 할 때마다 자동 컴파일 해줌 (생산성 증가)

 

● JVM (자바 프로그램을 실행하는 가상 운영체제)

JDK 설치하면 JRE 가 자동으로 설치됨 (개발하고 실행하기 위함)

JRE 설치하면 JVM이 자동으로 설치됨 

 

                                      ┌  src       //자바 소스코드

                             ┌  JVM             //자바 프로그램이 실제 실행되는 곳

                     ┌  JRE                      //자바 프로그램을 실행하기 위한 환경(JVM+lib) 

            ┌  JDK                              //자바 개발도구(JRE를 포함)

    ┌  OS 

 PC 

 

'IT국비지원' 카테고리의 다른 글

[JAVA] 조건문과 반복문  (0) 2021.10.24
[JAVA] 연산자  (0) 2021.10.24
[JAVA] 변수와 형변환  (0) 2021.10.24
[MySQL] 프로시저 (Procedure)  (0) 2021.10.18
[MySQL] 내장 함수  (0) 2021.10.18
[MySQL] INSERT / UPDATE / DELETE 문  (0) 2021.10.18
[MySQL] EXISTS  (0) 2021.10.18
Comments