기록/자바_국비

[배운 내용 정리] 1104 자바 국비교육

mois 2020. 11. 4. 20:42
728x90

2020년 11월 04일 09시 ~ 15시 30분 zoom으로 진행

자바 국비지원교육 2일차

(1일차는 학원 안내, 자기소개 진행)

 


프로그램 (Program)

 컴퓨터가 인식할 수 있는 명령어의 나열 (집합)

 

프로그래밍 (Programming)

 프로그램을 작성하는 과정 = 코딩

 

프로그래머 (Programmer)

 프로그램을 작성하는 사람

 

JAVA 언어 특징

 1. 운영체제에 독립적 [가장 큰 특징 중 하나]

 2. 사용하기 쉬운 언어

  - 다른 언어의 단점 보완 (포인터, 메모리 관리)

  - 객체지향 언어

  - 능률적이고 명확한 코드 작성 가능

 3. 자동 메모리 관리 (Garbage Collection)

 4. 네트워크와 분산환경 지원

 5. 멀티쓰레드 지원

 

가비지 컬렉션(Garbage Collection)

 JVM은 가비지 컬렉션이란 프로세스를 통해 메모리를 관리한다.

 가비지 컬렉션은 자바 프로그램에서 사용되지 않는 메모리를 지속적으로 찾아내서 제거한다

 

JVM (Java Virtual Machine)

 자바를 실행하기 위한 가상 기계, 플랫폼에 의존적

 byte code(class 파일)를 해석하고 실행하는 interpreter

 jvm에 의해 자바는 운영체제에 독립적일 수 있음

 Java code -> java compiler (컴파일 : 컴퓨터가 읽을 수 있는 바이트코드로 바꿔주는 작업)-> java Byte Code -> JVM

 

 

자바 설치 범위

 

 

프로그램 작동원리

 읽어온 값 -> 입력버퍼 -> 메모리에 기록 (변수) -> CPU가 읽어서 계산 처리 -> 계산 결과를 메모리로 보냄 ->

    메모리에 결과값 기록 -> 출력

 

데이터 저장 단위

 저장 공간은 제한적이다. 따라서 저장 크기에 대한 기준과 cpu가 데이터를 처리할 때 일정한 기준이 필요하기 때문에 저장단위를 구성한다

 

비트(bit)

 컴퓨터가 나타내는 데이터의 저장 최소 단위, 2진수 값 하나를 저장할 수 있는 메모리 공간

 

바이트(byte)

 데이터 처리 또는 문자의 최소 단위, 8개의 비트가 모여 하나의 바이트가 구성된다.

 2byte = 16bit / 한글은 2바이트

 

변수

 메모리(RAM)에 한 개의 값을 기록하기 위한 장소(공간)

 

변수의 자료형

 기본형 (Primitive Type)

- 실제 데이터(값)을 저장

- 논리형, 문자형, 정수형, 실수형으로 나눠지고 8개의 자료형이 있음.

 참조형 (Reference Type)

  - 데이터가 저장되어 있는 주소를 저장(객체의 주소)

- 기본형을 제외한 나머지(String 등), 사용자 정의 자료형

- 4byte의 공간을 저장공간으로 할당

 

참조형 변수 저장공간 예시

 

자료형

 정수형

  - byte  (1byte -> 8bit) 

  - short (2byte -> 16bit)

  - int    (4byte -> 32bit)

  - long  (8byte -> 64bit)

실수형

 - float  (4byte -> 32bit) : 실수 값을 저장하는 변수 저장 할 때 4.0f 이런 식으로 값 뒤에 f 를 붙인다.   

 - double (8byte -> 64bit) : 실수 값을 저장하는 변수 5.0 이런 식으로 값만 저장한다.

문자형

 문자

  - char (2byte) : 문자 한 글자 가 온자 ex) 'A'

 문자열

   - String (참조형) : 여러개의 문자 ex) "ABC..."

 논리형

  - boolean (1byte) : TRUE(참) 와 FALSE(거짓) 으로만 값을 가진다

 

변수의 선언

 메모리 공간에 데이터를 저장할 수 있는 공간을 할당하는 것

 ex) 변수 선언하는 방법 ->  자료형 변수명;

 ex)

 //논리형 변수 선언

 Boolean isTrue;     

 //문자형 변수 선언                         //문자열 변수 선언

 char ch;                                      String str;

 //정수형 변수 선언                         //실수형 변수 선언

 byte bnum;                                  float fnum;

 short snum;                                 double dnum;

 int inum;

 long lnum;

 

변수명 명명 규칙

 대소문자가 구분되며, 길이 제한이 없다

 예약어를 사용하면 안 된다.

 숫자로 시작하면 안된다.

 특수문자는 _ 와 $ 만을 허용한다.

 

변수 초기화

 변수를 사용하기 전에 처음으로 값을 저장하는 것

 -> 지역변수는 반드시 초기화 해야한다

 ex)

 //선언 후 초기화                            //선언과 동시에 초기화

 int age;                                       int age = 100;

 age = 100;

 

값 대입

 생성한 변수(저장 공간)에 값을 대입하는 것

 int age;

 age = 100; // 변수는 한 개의 데이터만 보관, 마지막에 대입한 값만 보관

 age = 20;  //  = 대입 연산자 (오른쪽의 값을 왼쪽에 넣겠다 라는 대입 연산자)

 

리터럴

 변수에 대입되는 값 자체를 의미한다. (빨간게 리터럴)

 short s = 32767;                 char c = ‘A’;

 int i = 100;                         String str = “ABC”;

 

상수

 수학에서는 변하지 않는 값을 의미, 컴퓨터에서는 한번만 저장할 수 있는 공간으로

 초기화 이후 다른 데이터(값)을 대입할 수 없다.

 ex)

  final int age; //상수 final 선언

  final double PI = 3.14;

 

기본형 데이터는 STACK영역에 값 저장

참조형 데이터는 STACK영역에 주소 저장, HIP 영역에 값 저장

 

데이터 크기가 정해진 친구가 stack에 저장된다고 생각

참조형같이 얼마가 들어올지 모르는 경우 hip에 저장