정적 변수 란 무엇입니까?
전역 변수라고도하는 정적 변수는 클래스의 특정 인스턴스와 관련이없는 데이터 조각입니다. 작성되는 클래스 오브젝트 수에 관계없이 이러한 변수에 대해 하나의 값만 존재할 수 있습니다. 상황에 따라 정적 변수는 인스턴스 변수에 비해 더 유연하거나 제한적일 수 있으며 클래스 변수의 모든 특정 객체에 대해 고유 한 이산 값을 갖습니다. 객체 지향 프로그래밍 언어에서 좋은 프로그래밍 실습은 일반적으로 정적 객체, 메소드 또는 변수의 사용을 최소한으로 유지하도록 지시하지만 유용한 응용 프로그램이 있습니다.
정적 변수가 때때로 제한적인 것으로 간주되는 주된 이유는 변수에 대해 하나 이상의 값이 존재할 수 없기 때문입니다. 변수에 할당하면 이전 변수를 덮어 쓰고 이전 값의 정보가 손실됩니다. 변수의 여러 사본이 없으면 여러 데이터 값을 저장할 수 없습니다. 값이 변경되면 영향을받는 모든 개체가 새 값으로 작동해야하며 이전 값을 삭제하지 않으려는 경우 변경이 특정 클래스 유형의 모든 인스턴스 개체에 해로운 것으로 판명 될 수 있습니다. 변수가 생성시에 어떻게 든 잠기지 않는 한, 예기치 않은 변경의 위험과 그로 인한 개체 손상으로 인해 일부 프로그래머는 가능할 때마다 정적 변수를 피할 수 있습니다.
정적 변수는 제한적이라고 불리는 동일한 이유로 유연한 것으로 간주 될 수 있습니다. 변수 값이 잠겨 있지 않더라도 계획된 값 변경은 긍정적 인 영향을 줄 수 있습니다. 클래스의 모든 객체간에 공유되는 변수는 일관성이 보장되며 값이 항상 동일하다는 확신을 가지고 클래스 내부와 외부에서 모두 사용할 수 있습니다. 정적 변수는 상수 유지 및 직렬화 구현에서 가장 유용한 다양한 응용 프로그램을 가지고 있습니다. 특히 Java는이 정적 직렬화 메커니즘에 크게 의존합니다.
정적 변수를 구현하는 동안 프로그래머가 자주 사용하는 특정 규칙이 있습니다. 이러한 정적 변수는 일반적으로 큰 정적 개체가 프로그램을 훨씬 더 엄격하게 만들 수 있기 때문에 작은 데이터 값으로 가장 잘 작동합니다. 작은 데이터 값은 오류가 발생할 염려없이 빠르고 쉽게 변경할 수 있습니다. 큰 정적 객체는 변경하는 데 더 많은 시간과 노력이 필요하며 모든 클래스 객체를 방해하는 오류가 발생하기 쉽습니다. 이 규칙은 깨지지 않는 규칙이 아니며 프로그램에 따라 작은 변수와 큰 변수 모두에 사용될 수 있습니다.