Ocean_
꾸준한 프로그래밍
Ocean_
전체 방문자
오늘
어제
  • 분류 전체보기 (174)
    • About Me (4)
    • 우아한테크코스 (27)
    • C & LINUX (50)
    • Operating System (12)
    • Database (25)
    • Computer Vision (0)
    • Problem Solving (0)
      • Programmers (0)
      • BOJ (0)
    • 코코코딩공부 (44)
      • Spring (12)
      • JAVA (14)
      • 디자인 패턴 (4)
      • 책 읽기 (4)

블로그 메뉴

  • 홈
  • 방명록

공지사항

인기 글

태그

  • 우아한테크코스5기
  • Spring
  • 리눅스
  • 자바
  • 백준
  • 우아한테크코스
  • signal
  • 우테코5기
  • OperatingSystem
  • C
  • 우아한형제들
  • bean
  • DB
  • C++
  • 블랙잭
  • Linux
  • Operating System
  • 1259
  • 정규화
  • OS
  • 프로세스
  • 데이터 조작어
  • 인덱스
  • BOJ
  • SIGINT
  • 원시값 포장
  • 트랜잭션
  • 우테코
  • 운영체제
  • 우테코 체스

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Ocean_

꾸준한 프로그래밍

코코코딩공부/JAVA

[JAVA] static, final, static final 이란 ?

2023. 2. 12. 01:20

레이싱 경주를 구현하다보니 static, final, static final의 차이가 궁금해져서 작성하게되었다. 뭔가 세개가 다 같다고 느껴져서 작성해보았다.

static

공용으로 가지는 필드이다.

객체 생성 없이 사용할 수 있는 필드와 메소드를 의미한다. static 변수,메소드는 Heap영역이 아닌 Static영역에 할당된다. Static 영역에 할당된 메모리는 모든 객체가 공유할 수 있다. 하지만 Static영역에 있는 멤버들은 프로그램의 종료시까지 메모리가 할당된 채로 존재하게 되므로 메모리차지를 통해 시스템 성능이 안좋을 수 있다.

지역변수, 메소드 라고 생각하면 될 것 같다.

final

final 키워드는 딱 한번 값이 할당 될 수 있는 필드이다.

final 클래스 - 상속할 수 없는 클래스

final 메소드 - 오버라이딩으로 수정할 수 없는 메소드

final 변수 - 한번 값을 할당하면 수정할 수 없으며 초기화 한번 가능하다.

static final

static을 사용하면 메모리를 낭비하지 않고 그대로 사용할 수 있다 && final을 사용하면 딱 한번 값이 할당 될 수 있다는 것이다. -> 그러면 어차피 한번 값을 할당해서 계속해서 사용하려고 한다면 결국 static final을 통해 static 영역에 할당함으로써 효율성을 높이게 사용한다.

 

모든 영역에서 고정된 값으로 사용하는 상수

 

 

결론

static 은 static 영역에 할당 함으로써 정적으로 사용한다.

final 은 한번 값을 할당할 수 있다.

static final은 한번 값을 할당해서 계속 쓸거라면 static 영역에 할당함으로써 효율적으로 계속 사용하려 할때 사용한다.

'코코코딩공부 > JAVA' 카테고리의 다른 글

[JAVA] 일급 컬렉션  (0) 2023.02.25
[JAVA] 원시값 포장  (0) 2023.02.25
[JAVA] equals와 hashCode를 Override 해야하는 이유  (0) 2023.02.25
[JAVA] 정규표현식  (0) 2023.02.14
[JAVA] ENUM  (0) 2023.02.06
    '코코코딩공부/JAVA' 카테고리의 다른 글
    • [JAVA] 원시값 포장
    • [JAVA] equals와 hashCode를 Override 해야하는 이유
    • [JAVA] 정규표현식
    • [JAVA] ENUM
    Ocean_
    Ocean_
    dongVeloper

    티스토리툴바