[Java] PS에서 static 객체를 사용하면 안되는 이유

조민서·2023년 1월 13일
2

JAVA

목록 보기
12/16

자바로 알고리즘 문제를 풀면서
그래프 탐색 문제 등등 에서 static boolean visited[] = new boolean[1000];
등의 배열로 방문 체크를 해본 경험이 있을 텐데,

// 알고리즘 사이트 채점 방식
Problem a = new Problem() 
Problem.solve() // A문제
Problem.solve() // B문제
Problem.solve() // C문제
Problem.solve()

채점 코드는 이런 식으로 동작한다. 따라서 static을 사용하면 A 문제에서 이용한 visited 함수를 B문제에서 그대로 참조하는 문제가 생긴다.
만약 static을 사용하고 싶다면 매번 visited 배열을 초깃값으로 초기화해야 한다.

profile
내 두뇌는 휘발성 메모리다. 😪

0개의 댓글