본문 바로가기
STUDY/Java

자바의 기초

by brown_board 2022. 1. 21.
728x90

1. 자바가 생긴 이유
c언어 익숙한 나는 자바를 만든 이유가 궁금했다.
1991년에 c와 c++을 이용해서 많이 개발하였는데 보통 제어목적으로 사용되었다. 그런데 가전 제품이나 휴대용 장치들이 개발되면서 그 장치에 사용하는 소프트웨어를 만들어야 했고 독립적으로 작동하는 더 안정된 프로그래밍 언어가 필요했다. 그래서 개발된게 자바이다.
-> 자바는 독립적으로 안정된 프로그래밍을 위해 개발된 언어이다. (소프트웨어 목표)

2. 자바와 c랑 다른 점
c는 소스코드로 만들면 os(윈도우,리눅스)에 따라 컴파일러가 되고 실행파일이 만들어 진다.
그래서 실행파일만 있다면 os마다 다르게 만들어줘야한다.
그러나 자바는 example이라는 이름의 프로그램을 만들고 컴파일하면 example.class파일이 생성된다. 이 파일은 바이트 코드라 하며 완벽한 실행파일이 아니다. 즉 중간 기계어의 단계이다.
그리고 이 바이트 코드는 os에서 직접 실행하는 게 아니라 자바 가상머신이 운영체제에 맞는 완벽한 실행파일로 만들어 주기 때문에 .class파일은 어느 환경에서나 실행할 수 있다.
-> 자바는 c와 달리 운영체제(플랫폼)에 영향을 받지 않는다.
-> 자바가상머신(JVM: Java Virtual Machine), 자바 실행 환경(JRE: Java Runtime Environment)
-> JVM가 실행될려면 JRE를 설치해야 한다. 

3. 자바의 특징
객체 지향 프로그래밍언어로 일의 순서대로 프로그래밍하는 것이 아닌 여러 객체의 협력을 통해 프로그램을 구현하는 한다. 그렇기 때문에 프로그램을 잘 설계하면 유지보수가 쉽고 확장성이 좋다. 그리고 c처럼 포인터를 사용하지 않아 메모리를 직접 제어할 수 없다. 하지만 위험성이 없어져서 훨씬 안정된 코드를 만들 수 있다. 그리고 동적 메모리를 할당하고 해제하지 않고 가비지 컬렉터가 동적 메모리를 수거하므로 메모리를 효율적으로 관리한다.
-> 자바는 객체지향언어로 유지보수와 확장성이 좋다. 그리고 메모리를 직접 건들이지 않아 안전하고 동적 메모리 해제를 할 필요가 없다.

 

728x90

'STUDY > Java' 카테고리의 다른 글

이것이 자바다. CH 3  (0) 2024.04.01
이것이 자바다. CH 2  (0) 2024.02.22
이것이 자바다. CH 1  (0) 2024.01.04
자바 객체,클래스,인스턴스  (0) 2022.03.25

댓글