본문 바로가기

부트캠프

[멋쟁이사자] 백엔드 - 4일차 회고록

728x90

4일차

학습 목표

  1. 자료형의 개념과 종류를 이해하고 사용할 수 있다.
  2. 변수의 선언과 활용 방법을 익히고 다양한 변수를 사용할 수 있다.
    • 변수 선언 및 초기화 규칙 학습
    • 지역 변수, 전역 변수, 정적 변수 개념 이해
    • final 기워드 활용법 숙지
  3. 메서드의 개념과 역할을 이해하고 정의 및 호출할 수 있다.

Java에서 기본 자료형

Type Bits Range of Values
byte 8 bits $-2^7 \sim 2^7-1 (-128 \sim 127)$
short 16 bits $-2^{15} \sim 2^{15}-1 (-32768 \sim 32767)$
int 32 bits $-2^{31} \sim 2^{31}-1 (-2147483648 \sim 2147483647)$
long 64 bits $-2^{63} \sim 2^{63}-1 (-9223372036854775808 \sim 9223372036854775807)$
float 32 bits $0x0.000002P-126f \sim 0x1.fffffeP+127f$
double 64 bits $0x0. 0000000000001P-1022 \sim 0x1. fffffffffffffP+1023$
char 16 bits $\u0000 \sim \uffff$
boolean 1 bit $true, false$

추가로 배우진 않았지만 블로그에 기록해놓은 BigInteger도 있다는것도 다시 기억해냈다.

관련 내용은 아래 블로그 Url에 있다.

https://lold2424.tistory.com/8

 

[Java] BigInteger 큰 숫자 다루기

int의 범위는 -2,147,483,648 ~ 2,147,483,647이고 long의 범위는 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807이다. 해당 범위를 넘는 숫자가 들어가게 되면 0으로 출력이 된다. 때문에 무한의 정수가 들어갈

lold2424.tistory.com

형변환 캐스팅

  • 묵시형
    • 작은 값에서 큰 값으로
    • int → double
  • 명시형
    • 큰 값에서 작은 값으로
    • double → int

static, final

statlcfinal의 경우 강의 시간에 배운 내용 말고 기억하던 내용도 복습할겸 기록해본다.

변수를 선언하는데 static, flnal을 사용할 수 있다.

static을 사용하면 코드 전역에서 사용이 가능하다.

이는 메모리를 프로그램 종료 전까지 할당한다는 소리와 같다.

final은 변수, 메서드, 클래스에 사용 가능하며 각각의 의미가 다르다.

1. 변수에 사용하는 경우

final int MAX_VALUE = 100;
MAX_VALUE = 200; // 컴파일 오류 발생

위와 같이 변수에 final을 선언하면 값을 변경할 수 없다.

2. 메서드에 사용하는 경우

class Parent {
    final void show() {
        System.out.println("This is a final method.");
    }
}

class Child extends Parent {
    void show() {  // 컴파일 오류 발생
        System.out.println("Trying to override.");
    }
}

위와 같이 final이 붙은 메서드는 하위 클래스에서 오버라이딩이 불가하다.

3. 클래스에 사용하는 경우

final class Animal {
    void sound() {
        System.out.println("Animal makes a sound");
    }
}    // 컴파일 오류 발생

위와 같이 클래스에 fainl을 사용하면 다른 클래스가 상속할 수 없다.

4. 상수 만드는데 사용하는 경우

class Config {
    static final double PI = 3.14159;
}

위와 같이 프로그램 전체에서 사용하는 상수는 final로 값을 변경할 수 없게 막아두기도 한다.

객체지향 3대 특징

  1. 캡슐화 = 정보 은닉
  2. 상속 = 재사용 + 확장
    • 자바는 단일 상속을 원칙으로 한다.
    • 선조는 후손을 모른다.
  3. 다형성(동적 바인딩) = 사용 편의
728x90