본문 바로가기
코딩/TIL,WIL

항해99 day20

by 내 멋대로 삶 2021. 11. 20.

항해99 day20

-to do list

  • 프로그래머스 문제1개
  • 객체지향 강의 최소5개
  • 스프링 인프런 강의 훝어보기
  • 개인/팀과제 제출

처음 시작했을때 부터 static이란 무엇인지 궁금했다. 

오늘 첫 강의시작으로 나와서 바로 기억하기 위해 적어본다.

인스턴스가 메모리에 할당 될때 메모리 부분은 Data 부분과 Code 부분으로 나뉜다.

data 부분에는 필수로 들어간 값들이 할당 되는데 상수,리터럴,static이 여기에 속한다.

 

인스턴스가 생성될 때 만들어지는 변수가 아닌,메모리가 로딩될 떄 메모리를 할당 받음으로

클래스 이름으로 직접 참조를 해야한다.

class Student 일떄

Student.(static변수이름)

이 static 변수는 인스턴스에서 공유가 가능하다.

공통으로 사용하는 변수가 필요할 떄 사용한다.

다른 인스턴스 2개에 static변수를 사용해서 실험해보았다.

다른 인스턴스에 ++더했을 때, 각 인스턴스에 둘다 플러스 되는 것을 확인

static변수는 인스턴스에서 공통으로 사용하는 영역임을 알게 되었다. 

여러 인스턴트들이 공유해야하는 데이터가 있다면 static을 쓰자!

하지만, static은 data메모리에 계속적으로 할당되어 있는상태이므로 메모리부분을 많이 차지하지 않는 것으로 설정하는것이 좋다. 배열같은경우는 너무 클수 있으므로 지양해야한다.

메모리할당이 정말 중요한 부분이라는 것을 깨달았다.

'코딩 > TIL,WIL' 카테고리의 다른 글

항해99 day23  (0) 2021.11.23
항해99 WIL(Weekly I Learned) day21  (0) 2021.11.22
항해99 day19  (0) 2021.11.19
항해99 day18  (0) 2021.11.18
항해99 day17  (0) 2021.11.17