20230417 자바 기초
자바의 특징
- 운영 체제 독립
– 모든 운영 체제에서 사용 가능합니다. - 객체 지향 프로그래밍(OOP)
– 객체는 프로그램이 동작하는 부분입니다. OOP는 프로그램을 실행하기 위해 여러 부분(객체)을 만들고 조립하는 개념입니다. - 함수형 프로그래밍 지원
– 함수형 프로그래밍을 지원하는 람다 식 및 스트림이 버전 8에 추가되어 컬렉션 요소를 보다 쉽게 필터링, 매핑 및 집계하고 코드를 단순화할 수 있습니다. - 자동 메모리 관리(가비지 컬렉션)
– 메모리를 관리하고 핵심 코드에 집중하는 데 드는 노력이 줄어듭니다.
JVM과 JDK
- •컴파일이란?
– 특정 프로그래밍 언어를 기계가 이해할 수 있는 언어로 번역하는 번역 과정 - •JVM이란?
– JVM은 자바 코드로 작성된 프로그램, 즉 프로그램을 실행시키는 프로그램을 해석하고 실행하는 별도의 프로그램이다. - JRE와 JDK의 차이점
– JRE(Java Runtime Environment): JVM + 표준 클래스 라이브러리. 즉 실행과 관련된 것입니다.
– JDK(Java Development Kit): JRE + 개발에 필요한 도구, 즉 개발과 관련된 것
- ※ JDK 11을 사용하는 이유
– 프로그래밍은 항상 안정성이 최우선이며, 버전 8은 여전히 오랫동안 가장 많은 사람들이 사용하는 버전입니다.
다음으로 가장 인기 있는 버전은 11입니다.
변하기 쉬운
- 변수: 값이 변할 수 있는 데이터를 일시적으로 저장하는 수단
- •변수명: 두 번째 단어의 첫 글자를 캐멀케이스로 대문자로 표기한다.
상수
- • 키워드 ‘final’을 사용한 선언, 대문자 밑줄(_)로 구분된 SCREAMING_SNAKE_CASE 사용.
정수 유형
- 숫자를 나타내는 유형
- •byte, short, int, long
– 롱타입 리터럴의 경우 리터럴 뒤에 L을 붙임으로써 구분한다. - 과다
– 최대값보다 큰 값을 표현할 때 발생(125, 126, 127, -128) - 언더플로
– 최소값 이하의 값을 표현한 경우 발생(127-128, -127, -126)
실수 유형
- •실수란 소수점이 있는 값을 의미합니다.
- •플로트, 더블
– 플로트 유형 리터럴에는 접미사 f가 있어야 합니다. - 과다
– 값이 최소 음수 범위 또는 최대 양수 범위를 초과하는 경우 발생하며, 이 경우 값은 무한대입니다. - 언더플로
– 값이 최대 음수 범위 또는 최소 양수 범위를 초과하는 경우 발생하며, 이 경우 값은 0입니다.
논리 유형
- 하나의 부울 유형입니다.
– true와 false 값만 있습니다.
문자 유형
- • char형 중 하나만.
- • 문자 리터럴을 작성할 때는 반드시 작은따옴표(‘ ‘)를 사용하십시오.
– 큰따옴표(” “)를 사용한 리터럴은 문자형이 아닌 문자열로 인식합니다.
유형 변환
- 유형이 자동으로 변환되는 경우
1. 바이트 크기가 작은 타입에서 큰 타입으로 변환할 때
2. 덜 정밀한 유형에서 더 정밀한 유형으로 변환할 때
예) byte(1) -> short(2)/char(2) -> int(4) -> long(8) -> float(4) -> double(8)
- •수동 타입 변환: 메모리 용량이 큰 타입에서 메모리 용량이 작은 타입으로 자동 변환되지 않습니다.
– 타입을 수동으로 변환할 때 형 변환 연산자 ‘( )’를 사용하고 변환할 타입을 괄호 안에 적는다.
정수 정수 값 = 128;
바이트 바이트값 = (바이트)int값
System.out.println(byteValue); // -128
![[공지] 시험일정(하반기), 시험시간, 시험장소, 응시방법, 합격자 발표 등을 확인할 수 있습니다. [공지] 시험일정(하반기), 시험시간, 시험장소, 응시방법, 합격자 발표 등을 확인할 수 있습니다.](https://blog.kakaocdn.net/dn/bPmJiL/btqWOgrNoxv/4KiERT4mpJgtJs8SyIYScK/img.jpg)