안녕하세요

ContentProver에 대한 예제 소스를 보다가 위의 클래스를 보았는데 
머리를 굴려봐도 도무지 무슨 클래스이며 왜 사용하는지를 모르겠습니다.

선언도 희안하게

private static final UriMatcher uriMatcher;
{
uriMatcher = new UriMatcher(UriMatcher.NO_MATCH);
uriMatcher.addURI(PROVIDER_NAME, "scores", SCORES);
uriMatcher.addURI(PROVIDER_NAME, "scores/#", SCORES_ID);
}

이런식으로 되어있는데
기본 지식이 짧아서 그런데 세미콜론(;)이후에 { } 하는 용도가 뭔가요?

그리고 static { } 하면 그냥 { } 하고 차이가 뭔가요?

수고하십시오