javaboiii의 JAVA/JAVA 요약정리(멘토씨리즈)

JAVA - 1)프로그래밍의 기본

javaboiii 2024. 7. 12. 23:51

JAVA

자바 소개

자바는 1991년 선 마이크로시스템즈(Sun Microsystems Inc.)의 제임스 고슬링을 비롯한

연구원들에 의해 개발된 객체 지향 프로그래밍 언어입니다.

자바는 전 세계에서 가장 많이 사용하는 프로그래밍 언어중 하나로 게임, 웹, 서버, 안드로이드 앱 애플리케이션 등

다양한 프로그램을 개발하는 데 사용되고 있습니다.

 

자바의 역사

자바의 역사는 오크(Oak)라는 프로그래밍 언어에서부터 시작됩니다.

그 당시 많이 사용되던 프로그래밍 언어인 C와 C++은 운영체제에 따라 컴파일러가 필요했고

이는 비용부담과 시간이 많이 소요된다는 점에서 불편함이 있었습니다.

C와 C++의 단점을 보완하고 독립적으로 작동되는 안정적인 프로그램을 개발하게 되는데

이 언어가 바로 오크입니다.

오크는 초기에 개발된 목적이 현 자바와 달랐지만

인터넷의 등장과 함께 개발 방향을 바꾸면서 이름도 자바(Java)로 변경 되게됩니다.

 

자바의 특징

자바는 대표적인 객체 지향 언어입니다.

객체지향 언어란 하나의 기능을 객체로 만들고, 이러한 객체들을 결합해서 하나의 프로그램을

완성하는 기법을 말하며 상속, 캡슐화, 다형성, 추상화가 특징입니다.

 

자바는 이식성이 좋습니다.

자바 프로그램이 여러 운영체제에서 동일한 실행 결과가 나오도록 설계됐습니다.

따라서 운영체제 종류와 상관없이 어느 환경에서나 실행할 수 있습니다.

 

멀티 스레드(Multi-Thread)

멀티 스레드는 CPU를 최대한 활용하기 위해 프로그램의 2가지 이상을

동시에 실행할 수 있는 기능을 말합니다.

 

  • 동시성(Concurrency) : 멀티 작업을 위해 하나의 코어에서 멀티 스레드가 번갈아 가며 실행
  • 병렬성(Parallelism) : 멀티 작업을 위해 멀티 코어에서 개별 스레드를 동시에 실행

자바는 자체 API를 이용하기 때문에 일관되게 생성 및 관리를 할 수 있다.

 

메모리 자동 정리

자바는 자동으로 가비지 컬렉터(GC : Garbage Collector)가 사용하지 않는 메모리를 주기적으로 수거하고 관리

 

풍부한 오픈소스 라이브러리

자바는 무료로 제공하는 라이브르리가 많이 개발되어 있어 프로그램 개발 기간을

단축시킬 수 있으며 안전성 높은 프로그램 개발을 할 수 있다.

 

단점

  • 실행을 위해 자바 가상 머신을 거쳐야 하므로 다른 언어들에 비해 실행 속도가 느리다
  • 예외 처리가 잘 되어 있으나 개발자가 처리를 지정해 줘야 하므로 불편함이 있다

 

자바 개발 환경 준비하기

1. 자바 개발 키트 설치

자바로 프로그램을 개발하고 실행하려면 자바 가상 머신이 필요합니다.

자바프로그램을 개발하려면 자바 개발 키트(JDK : Java Development Kit)가 필요하고,

이미 개발된 프로그램을 실행하려면 자바 실행 환경(JRE : Java Runtime Environment)만 설치하면 됩니다.

 

2. 시스템 환경 변수 설정

자바 설치 폴더 안에는 컴파일러인 javac.exe와 자바 프로그램을 실행 시켜주는 java.exe가 있습니다.

이 실행 파일들은 자바 프로그램을 개발할 때 항상 사용하게 되므로 어느 디렉토리에서나 실행할 수 있도록

환경변수를 설정합니다.

 

3. 이클립스 설치하기

이클립스는 자바 응용 프로그램 개발을 위한 통합 개발 환경(IDE : Integrated Development Environment)입니다.

통합 개발 환경(IDE)은 프로젝트 생성, 자동 코드 완성, 디버깅 등 개발에 필요한 다양한 기능을 제공하는 편집 툴입니다.

 

JAVA 실습(초급) 1,2,3 참고

 

벅벅코딩

이제 당신도 개발자 ※1주일에 한편씩 업로드 하도록 노력하겠습니다! 요즘 주말에도 바빠서 업로드가 늦는 점 죄송합니다. 시간이 걸려도 제대로 만들겠습니다

www.youtube.com

 

 

패키지는 클래스의 묶음으로 시스템의 폴더와 같은 개념입니다.

동일한 이름의 클래스가 존재할 수 있기 때문에 패키지 형태로 구분하여 클래스를 식별합니다.

패키지 이름은 항상 소문자로 입력합니다.

클래스 이름은 항상 대문자로 시작합니다.

 

디버깅(오류 수정하기)

프로그래밍 도중 오류가 발생하면 소스 코드 아래 빨간 밑줄이 나타납니다.

빨간 밑줄이 표시된 부분에 마우스를 가져가면 오류 원인을 확인할 수 있습니다.

 

프로그램 기본 구조

자바 프로그램의 실행 프로세스

자바 가상 머신 JVM(Java Virtual Machine)은 운영체제 마다 따로 코드를 작성해야하는 번거로움 없이

'플렛폼에 독립적'일 수 있게 만들어 줍니다.

JVM만 각 OS에 설치되어 있다면 HW 운영체제와 상관없이 단 한번만 컴파일하면 됩니다.

이를 '플렛폼에 독립적'이라고 합니다.

 

자바 언어로 만들어진 파일을 컴파일하면 기계어 파일인 바이트코드(.class) 파일이 생성되고

이후 바이트코드를 JVM이 읽고 실행하게 됩니다.

 

자바 바이트 코드(Java ByteCode)

자바 바이트 코드는 중간 기계어를 말합니다. 운영체제에서 바로 실행할 수 있는 파일이 아니므로 JVM이 필요합니다.

바이트 코드의 확장자는 '.class'이며 JVM이 설치되어 있다면 어떤 운영체제에서도 실행할 수 있습니다.

 

자바 컴파일러(Java Compiler)

자바 소스 파일을 JVM이 해석할 수 있는 자바 바이트 코드(.class파일)로 번역합니다.

 

자바 가상 머신(JVM)

자바 클래스 파일을 로드하여 바이트 코드를 특정 운영체제에서 사용하는 실행 코드로 해석합니다.

메모리 등의 자원을 할당하고 관리하며 정보를 처리하는 작업을 하는 프로그램입니다.

 

자바 프로그램의 기본 구조

자바 프로그램은 클래스, 메서드, 실행문으로 이루어집니다.

 

클래스

자바의 기본 단위 == 자바에서 프로그램을 개발하는 단위입니다.

하나 이상의 클래스가 있어야 하며 파일의 이름이 클래스 이름과 동일합니다.

 

메서드

수행할 작업을 나열한 코드 모임입니다.

 

실행문

작업을 지시하는 것으로 변수나 상수의 선언, 값 저장, 메서드 호출 등 다양한 명령어와 연산자로 구성됩니다.

 

주석

주석은 코드에 설명이나 필요한 정보등을 기록한 것으로 컴파일되지 않아 프로그램 실행에는

영향을 주지 않습니다. 주석으로 코드를 잘 설명해 놓으면 오류를 찾거나 복잡한 코드를 이해하기 쉬고

다른 개발자가 코드를 해석하는 데 도움이 됩니다.

 

기호 구분 설명
// 행 주석 // 부터 그 줄의 끝까지 주석처리, 주석내용이 한줄 일 때
/*...*/ 범위 주석 /*와 */사이의 내용을 모두 주석처리, 여러줄 주석이 필요할 때
/**...*/ 문서(JavaDoc) 주석 /**와 */ 사이의 내용을 모두 주석처리, 자바의 문서(API)를 만들 때

 

실행문

실행문은 변수의 선언 및 변수값 저장, 메서드 호출에 해당하는 코드를 말합니다.

실행문 끝에는 반드시 세미콜론(;)을 붙여서 실행문이 끝났음을 표시해야 합니다.

 

public static void main(String[] args){
	System.out.println("신짱구");
    /*
    신짱구
    2024-01-01
    */
}

'javaboiii의 JAVA > JAVA 요약정리(멘토씨리즈)' 카테고리의 다른 글

JAVA -6)배열  (0) 2024.07.17
JAVA - 5)제어문2  (1) 2024.07.16
JAVA -4) 제어문1  (1) 2024.07.15
JAVA - 3)연산자  (1) 2024.07.14
JAVA - 2)변수와 자료형  (0) 2024.07.13