20230417-5일 차 자바 기초(1)

20230417 자바 기초

자바의 특징

  1. 운영 체제 독립
    – 모든 운영 체제에서 사용 가능합니다.
  2. 객체 지향 프로그래밍(OOP)
    – 객체는 프로그램이 동작하는 부분입니다. OOP는 프로그램을 실행하기 위해 여러 부분(객체)을 만들고 조립하는 개념입니다.
  3. 함수형 프로그래밍 지원
    – 함수형 프로그래밍을 지원하는 람다 식 및 스트림이 버전 8에 추가되어 컬렉션 요소를 보다 쉽게 ​​필터링, 매핑 및 집계하고 코드를 단순화할 수 있습니다.
  4. 자동 메모리 관리(가비지 컬렉션)
    – 메모리를 관리하고 핵심 코드에 집중하는 데 드는 노력이 줄어듭니다.

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