🔵 소스 source
고급 언어로 작성된 내용
🔵 컴파일 compile
컴퓨터가 이해할 수 있도록 0과 1로 이루어진 기계어로 변환하는 과정
🔵 객체 지향 프로그래밍 OOP : Object Oriented Programming
프로그램을 개발하는 기법으로, 부품에 해당하는 객체들을 먼저 만들고 이것들을 하나씩 조립 및 연결해서 전체 프로그램을 완성하는 기법
🔵 자바 가상 기계 JVM : Java Virtual Machine
자바 프로그램은 완전한 기계어가 아닌 중간 단계의 바이트 코드이기 때문에, 이것을 해석하고 실행할 수 있게 해주는 가상의 운영체제
*JVM의 메모리 영역
- 메소드 영역 : 클래스(~.class)들을 클래스 로더로 읽어 클래스별로 런타임 상수, 풀, 필드 데이터, 메소드 데이터, 메소드 코드, 생성자 코드 등을 분류해서 저장한다
- 힙 영역 : 객체와 배열이 생성되는 영역. JVM 스택 영역에서 생성된 변수나 다른 객체의 필드에서 이곳에 있는 객체와 배열을 참조한다
- JVM 스택 영역 : 스레드마다 하나씩 존재. 스레드가 시작할 때마다 JVM 스택 영역이 할당된다
🔵 자바 개발 도구 JDK : Java Development Kit
프로그램에 필요한 자바 가상 기계(JVM), 라이브러리 API, 컴파일러 등의 개발 도구가 포함된 소프트웨어 패키지
🔵 자바 실행 환경 JRE : Java Runtime Environment
자바 프로그램 실행에 필요한 자바 가상 기계(JVM), 라이브러리 API가 포함된 소프트웨어 패키지
🔵 실행문
변수 선언, 값 저장, 메소드 호출에 해당하는 코드
🔵 클래스 class
객체를 생성하기 위한 필드와 메소드가 정의된 것, 객체의 설계도에 해당
🔵 메소드 method
어떤 일을 처리하는 실행문들을 모아 놓은 블록
- 메소드 호출 : 메소드를 코드 내에서 사용하는 것
🔵 주석 comment
프로그램 실행과는 상관없이 코드에 설명을 붙인 것
- // : // 부터 라인 끝까지 주석으로 처리
- /* ~ */ : /*와 */ 사이에 있는 모든 범위를 주석으로 처리
🔵 통합 개발 환경 IDE : Integrated Development Environment
프로젝트 생성, 자동 코드 완성, 디버깅 기능을 제공하는 환경
ex) Eclipse(자바), Visual Studio(C/C++)
🔵 디버깅 debugging
모의 실행을 해서 코드의 오류를 찾는 행위
🔴 변수 variable
하나의 값을 저장할 수 있는 메모리의 공간. 프로그램에 의해서 수시로 값이 변동될 수 있음. 하나의 변수에는 오로지 하나의 값만 저장할 수 있고, 자바에서는 선언된 변수에 한 가지 종류의 값만 저장할 수 있음
- 로컬 변수(지역 변수) : 메소드 블록 내에서 선언된 변수. 로컬 변수는 메소드 실행이 끝나면 메모리에서 자동으로 없어짐
* 변수와 관련된 용어
- 변수 선언 : 어떤 식별자를 갖고, 어떤 데이터를 가지고 시작하는 변수라는 것을 알리는 것
- 할당 : 변수에 값을 넣거나 저장하는 것을 '할당한다'고 함(메모리에 변수의 값이 들어갈 공간을 할당해야 하기 때문)
- 참조 : 변수에 접근하는 것을 '참조한다'고 함
🔴 예약어 reserved word
이미 해당 프로그래밍 언어에서 사용하기 위해 의미가 정해져 있는 것
(예약어를 식별자(변수명/메소드명/함수명)로 사용하면 : 프로그래밍 언어 내에서 이미 문법적인 용도로 사용되고 있기 때문에 사용하면 안됨. 자바에서 예약어를 식별자로 사용할 경우 컴파일러에서 에러 처리하여 실행되지 않음)
🔴 초기값 initial value
변수를 선언하고 처음 저장하는 값
🔴 초기화 initial value
변수에 초기값을 주는 행위
🔴 리터럴 literal
소스 코드 내에서 직접 입력된 값
(상수와 리터럴 : 리터럴은 상수와 같은 의미지만, 프로그램에서는 상수를 "값을 한 번 저장하면 변경할 수 없는 변수"로 정의하기 때문에 이와 구분하기 위해 "리터럴"이라는 용어를 사용함)
🔴 이스케이프 문자 escape character
역슬래시(\) 기호가 붙은 특수한 문자 리터럴
이스케이프 문자 | 출력 |
\t | 수평 탭 |
\n | 줄 바꿈 |
\r | 캐리지 리턴 |
\" | " (큰 따옴표) |
\' | ' (작은 따옴표) |
\\ | \ |
\u16진수 | 16진수에 해당하는 유니코드 |
🔴 유니코드 unicode
세계 각국의 문자들을 코드값을 매핑한 국제 표준 규약. 유니코드는 하나의 문자에 대해 하나의 코드값을 부여하기 때문에 영문 'A' 및 한글 '가'도 하나의 코드값을 가짐. 자바는 모든 문자를 유니코드로 처리함
char c1 = 'A'; char c2 = '\u0041'; |
아스키(ASCII) 코드와 유니코드
유니코드는 영문자 외에 전 세계의 문자를 표현할 수 있도록 설계된 반면 아스키(ASCII : American Standard Code for Information Interchange, 미국 정보 교환 표준 부호) 코드는 7비트로 표현되는 영문자 기반 인코딩. 유니코드의 앞부분은 아스키 문자로 할당되어 있음)
🔴 자료형 data type
자료의 형태, 자료형에 따라 컴퓨터가 어떻게 처리하는지 달라짐. 자바에서는 기본 타입과 참조 타입으로 구분됨
🔴 기본 타입 primitive type
원시 타입이라고도 함. 정수, 실수, 문자, 논리 리터럴을 저장하는 자료형
🔴 참조 타입 reference type
객체의 번지를 참조하는 타입. 배열, 열거, 클래스, 인터페이스 타입이 있음
참조 : 대상의 주소값을 통해 접근하는 것
참조에 의한 호출 : 메소드가 전달인자로 주소값을 넘겨받아 해당 위치에 있는 값에 접근하여 다른 곳에서 쓰일 수 있도록 수정할 수 있음
전달인자로 받은 데이터의 타입에 따라 그 값이 주소값이 되기도 하고, 객체가 가리키는 값이 되기도 함
출처 : 혼공자바
'Java' 카테고리의 다른 글
[Java] 이클립스 Eclipse 단축키 모음 (3) | 2023.11.02 |
---|