JAVA - 프로그래밍 언어
: 프로그래밍 언어는 개발자와 컴퓨터가 소통하기 위한 언어이다.
소스코드
: 명령어를 작성해 놓은 것.
: 개발자와 컴퓨터가 소통할 것을 글로 작성해 놓은 것.
컴파일
: 사람의 언어를 컴퓨터 언어로 바꿔주는 작업.
컴파일러
: 컴파일을 해주는 프로그램 또는 명령어.
프로그램
: 소스코드로 잘 짜여진 틀.
콘솔
: 개발자와 운영체제가 소통한 결과를 보여주는 창.
▶ 일반 프로그램 -> 이식성이 좋지 않다.
- 프로그램
- OS (운영체제) : 하드웨어에 적절한 전기신호를 흘려주는 역할.
- 하드웨어 (RAM, CPU ... )
▶ 자바 프로그램
- 프로그램
- JVM (자바 가상 운영 체제) : JAVA 프로그램을 OS에 맞게 번역한다.
- OS
- 하드웨어
- JAVA 프로그램은 이식성이 좋다.
JVM (Java virtual Machine)
: JAVA 프로그램을 실행해 줌.
JRE (Java Runtime Environment)
: JVM을 생성하며, 실행할 때 필요한 라이브러리 파일들을 가지고 있다.
JDK (Java Development Kit)
: JRE 외에 개발에 필요한 도구들을 가지고 있다.
: 컴파일 명령어와 실행 명령어를 담고 있다.
JDK 설치 - 11버전
프로젝트 > 패키지 > 클래스 > 메서드 > 소스코드
메소드
1. print() : 마지막에 자동으로 줄바꿈되지 않고 아래 문장과 이어서 출력된다
2. println() : 마지막에 자동으로 줄바꿈 된다.
3. printf() : 서식문자 사용.
변수: 저장공간
x = 10
저장공간의 이름 / 대입 연산자 / 값(상수)
자료형(type)
- 자료형 type byte 값
- 정수형 int 4 1, 325, 54754, - 321839
- 실수형 float / double 4/8 1.0F, 0.0F / 1.0, 0.0 (double이 default값)
- 문자형 char 2 'A', '강, '0', ...
- 문자열 String (class타입) ? "김지윤", "ABC" ...
변수의 선언
자료형 변수명 = 초기값; > 초기화
자료형 변수명;
EX)
int x = 10;
x라는 이름의 저장공간이 할당(allocation)되고 그 안에 10이 들어간다. (RAM에 할당)
주소
int x = 10;
x라는 이름의 저장공간이 RAM에 할당되면 고유한 값인 주소값이 부여된다.
계속 실행되거나 종료되는 프로그램이 있기 때문에, 주소값은 변경될 수 있으나 중복은 없다.
변수의 사용
int data = 10; // 저장공간 (자료형)
data = 20; // 저장공간
data + 9; // 값 (대입연산자)
data = data + 99; // 저장공간, 값
System.out.print(data); // 값
args : 저장공간앞에 자료형 있으면 저장공간 (int)x 값만 있으면 값
변수 선언 시 주의사항
1. 같은 이름의 변수로 선언할 수 없다.
2. 초기화를 해준다.
3. 되도록 선언부에 한꺼번에 선언한다. (영역 상단)
변수명 주의사항
- 문자로 시작해야 한다.
- 특수문자를 사용할 수 없다. 단, _. $ 는 허용한다.
- 소문자로 시작한다.- 공백을 사용할 수 없다.
good_boy : 언더바 표기법
goodBoy : 카멜 표기법
되도록 한글을 사용하지 않는다.
명사로 사용한다.
뜻이 있는 단어를 사용한다.
a, b, c , d, e, ... (x)
data, number, age, name, ... (o)
변수를 사용하는 이유
1. 반복되는 값을 쉽게 관리하기 위해서
2. 의미없는 값을 하나의 정보로 만들기 위해서 (자료구조)
출력 메소드
printf () : 서식 문자를 사용하여 출력할 수 있으며, 자동으로 줄바꿈되지 않는다.
상수
- 항상 그대로인 수, 값을 변경할 수 없도록 한다.
- 상수는 대문자, 언더바 표기법 사용 (EX. WHITE_COLOR)
final 자료형 변수명 = 값;
상수명 = 값;
'JAVA' 카테고리의 다른 글
[0117] 자바 기초 (0) | 2023.01.17 |
---|---|
[0116] 자바 기본 (형변환) (0) | 2023.01.16 |
[1227] 웹개발반2 (html) (1) | 2022.12.27 |
[1226] 웹개발반1 (html) (0) | 2022.12.26 |
Java2 Day01 (0) | 2022.09.24 |