InvalidMarkException — 잘못된 표시 예외

InvalidMarkException — 잘못된 표시 예외

버퍼의 position을 리셋하려고 시도할 때 mark가 정의되어 있지 않으면 던져지는 unchecked 예외예요. 즉 mark()로 표시를 설정하지 않은 상태에서 reset()을 호출하면 이 예외가 발생해요.

출처: Java API Reference

본문

  • public InvalidMarkException() — 이 예외의 인스턴스를 생성해요.

IllegalStateException을 상속해요. 버퍼에서 mark() 후에 clear(), flip(), rewind() 같은 연산이 mark를 버리면, 그 뒤 reset()을 호출할 때 이 예외가 발생할 수 있어요.

FloatBuffer buf = FloatBuffer.allocate(8);
// buf.reset();  // mark가 없으면 InvalidMarkException
buf.mark();      // 표시 설정
buf.reset();     // 정상 동작

더 알아보기 (Learn more)