public으로 선언된 Object.finalize() 메서드의 모든 구현을 보고합니다.

Object.finalize()의 컨트랙트에 따라 가비지 컬렉터만 이 메서드를 호출합니다. 이 메서드를 public으로 만드는 것은 메서드가 다른 코드에서 사용될 수 있음을 의미하므로 혼동을 줄 수 있습니다.

다른 클래스에서 호출되는 것을 막기 위해 해당 메서드를 protected로 만드는 빠른 수정이 제공됩니다.

예:


  class X {
    public void finalize() {
      /* ... */
    }
  }

빠른 수정을 적용한 후:


  class X {
    protected void finalize() {
      /* ... */
    }
  }