Heestory

06.Static , class/Instance 본문

개발(~국비)/기술면접

06.Static , class/Instance

까만밀가루 2022. 10. 19. 21:18

Static

변수 선언 혹은 메소드 생성 시 사용

 

 static으로 선언한 정적 변수와 메소드는 프로그램이 실행될 때 Java 메모리 영역에 할당되며, 객체 생성 없이 사용하거나 접근할 수 있습니다. 이는 프로그램이 종료될 때까지 유지됩니다.

 

- static으로 설정하면 같은 메모리 주소를 갖기 때문에, static 변수의 값은 공유에 용이합니다.

static으로 공유된 변수를 사용할 때는 그만큼 메모리를 따로 할당하지 않고 절약할 수 있습니다.

즉, 저장된 메모리는 모든 객체가 공유하며 하나의 멤버를 어디서든지 참조할 수 있다.

 

단, 프로그램 종료시까지 메모리가 할당된 채로 존재해서, 너무 남발하게 되면 시스템 성능에 악영향을 줄 수 있다.

 

class/Instance

클래스 : 객체를 만들어 내기 위한 설계도 혹은 틀, 변수와 메서드의 집합

객체 : 설계도로 구현한 모든 대상, 클래스에 선언된 모양 그대로 생성된 실체, 클래스의 인스턴스

인스턴스 : 클래스에 속하는 각각의 객체, 객체를 소프트웨어에 실체화된 것, 실체화된 인스턴스는 메모리에 할당

#.객체와 인스턴스 차이

객체는 모든 인스턴스를 대표하는 포괄적인 의미이며, 인스턴스는 어떤 클래스로부터 만들어진 것인지를 보다 강조하는 의미를 가지고 있다.

 

 

 

'개발(~국비) > 기술면접' 카테고리의 다른 글

08.클래스 변수/인스턴스 변수/지역변수/매개변수  (0) 2022.10.20
07.캡슐화/상속/다형성/추상화  (0) 2022.10.20
05.스레드(Thread)  (0) 2022.10.19
04.객체의 직렬화  (0) 2022.10.19
02.자바 컬렉션  (3) 2022.10.19