[오류내용]
아래 오류 5가지 케이스에 모두 해당하는 동일한 해결방안으로 간다.
1. Rename this field "GET_TOKEN_URL" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.
2. Make this final field static too.
3. Field names should comply with a naming convention.
4. Class variable fields should not have public accessibility.
5. Make target a static final constant or non-public and provide accessors if needed.
[해결방법]
private final String GET_TOKEN_URL = "/auth/v1";
위 멤버변수의 선언은 변수를 값을 재할당(값변경)하지 않으면서 클래스 내부적으로 쓰겠다는 의미이다.
그리고 Method 에서 변수를 사용할때마다 값이 새로 할당이 되는게 문제이다. 메모리 낭비인 셈이죠.
변수의 용도로 보았을때는
private static final String GET_TOKEN_URL = "/auth/v1"; 으로 변경하는게 맞다.
만약 다른 클래스에서 참조가 된다면
public static final String GET_TOKEN_URL = "/auth/v1"; 으로 변경하는 방안도 생긴다.
즉. 용도에 맞게 변경해야된다는 건데..
이러한 구문으로도 변경될 수도 있을 것 같다.
private String getTokenUrl = "/auth/v1";
public String getTokenUrl(){
return getTokenUrl;
}
변수의 용도를 생각해보고 각자 위 방식중 하나를 택해서 하면 될 듯하다.