Static 사용 주요 이점
공유 데이터와 메서드: static 멤버는 모든 객체 인스턴스에서 동일한 값을 공유하며, 메서드를 호출할 수 있습니다.
메모리 절약: static 멤버는 객체 인스턴스마다 메모리를 추가로 소비하지 않아 메모리를 절약할 수 있습니다.
유틸리티 클래스: static 멤버를 사용하여 유틸리티 클래스를 생성하면, 인스턴스화가 필요 없고 공통 기능을 공유할 수 있습니다.
상수: static final로 선언된 변수는 값을 변경할 수 없는 상수로 사용됩니다.
메서드 오버라이딩 제한: static 메서드는 하위 클래스에서 변경될 수 없으므로, 메서드의 동작을 고정하고자 할 때 사용됩니다.