Notice
Recent Posts
Recent Comments
Link
«   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
Archives
Today
Total
관리 메뉴

forest_moon

[Java] 자바, 입문하기! 자바 시작하기 본문

JAVA/inflearn정리

[Java] 자바, 입문하기! 자바 시작하기

rokga 2023. 4. 2. 19:27

자바 프로그래밍

역할

자바는 이러한 문제를 해결하는 도구이다. 자바는 사람의 명령을 컴퓨터의 언어로 바꿔준다. 이렇게 자바 언어로 컴퓨터에게 일을 시키는 것. 이를 자바 프로그래밍이라 한다.

과정

개발자는 컴퓨터에게 시킬 일들을 자바 언어로 작성한다. 이렇게 작성된 코드를 소스코드라 한다. 소스코드는 컴파일러(compiler)라는 번역기를 통해 기계어로 바뀐다. 비로소 컴퓨터는 기계어를 수행하게 된다. 특별히 자바 코드가 기계어로 번역되는 과정. 이를 컴파일링(compiling) 이라 한다.

 


요약

  • 프로그래밍이란, 컴퓨터에게 일을 시키는 것이다.
  • 바이너리 언어란, 0과 1만으로 이루어진 컴퓨터 언어이다.
  • 자바를 통해 프로그래밍이 가능하다.
  • 컴파일링이란, 소스코드가 기계어로 번역되는 것이다.

 

객체 지향 언어

자바는 객체 지향 프로그래밍(Object-Oriented Programming) 언어다. 쉽게 말해, 객체를 조립하여 전체 프로그램을 만드는 언어다. 자전거를 전체 프로그램, 각 부품을 객체라고 생각하면 이해가 쉽다.

현대의 모든 프로그래밍 언어는 객체 지향 패러다임을 따른다. 조립식으로 만들어진 프로그램은 여러 장점이 있기 때문이다. 예를 들어 고장이 난 경우, 해당 부품만 갈아주면 된다. 추가로 특정 기능들을 손쉽게 개선 또는 확장할 수 있다.

 

 

 

  • 프로그래밍 언어는 다양(Java, Python, C, …)하다.
  • 자바의 특징은 아래와 같다.
    • 수요 많음
    • 이식성 좋음
    • 객체 지향(조립식 프로그래밍 가능)

 

변수

변수(variables)란 변하는 수로서, 이름 붙여진 메모리 공간이다. 여기서 메모리(memory)란, 컴퓨터의 핵심 부품으로 기억을 담당한다. 또 다른 핵심 부품으로는 CPU(연산 담당)가 있다.

 

생성법

변수 생성 형식은 아래와 같다.

TYPE NAME; // 변수의 타입을 적고, 뒤에 이름을 붙임.

실제 변수 생성 예

 

int mathScore = 88;            // 수학 점수를 저장할 공간
String bookTitle = "오만과 편견"; // 책 이름을 저장할 공간
double weight = 72.4;          // 무게를 저장할 공간
boolean finished = true;       // 종료 여부를 저장할 공간

 

타입

타입(types)이란, 변수의 형태이다. 대표적 타입으로는 int(정수형), double(실수형), String(문자열), boolean(논리형) 등이 있다.

 

// 정수(딱 떨어지는 수) => 3, -7, 0, 10, ...
// 실수(정수 + 소수점 이하) => 3.14, -9.81, 0.0, ...
// 문자열(문자의 나열) => "hello", "world", ...
// 논리형(참/거짓) => true, false

타입은 또 크게 두 가지 카테고리로 나뉜다. 이는 기본형레퍼런스형이다.

 

연산자

정의

연산자(operators)란, 말 그대로 연산 기호이다. 대표적인 연산자로는 더하기(+), 빼기(-), 곱하기(*), 나누기(/), 대입(=) 등이 있다.

 

우선순위

연산자는 우선순위에 따라 실행 순서가 결정된다.

int result = 3 + 8 * (3 - 1); // result => 19

 

요약

  • 변수는 이름 붙여진 특정 메모리 공간으로 특정 값을 저장한다.
  • 컴퓨터의 핵심 부품인 Memory는 기억을, CPU는 연산을 담당한다.
  • 대표적 타입으로는 int(정수), double(실수), String(문자열), boolean(논리형)이 있다.
  • 연산자는 우선 순위가 존재한다.