The reason it is not is because I want my logs to reflect the subclass that is logging. If we declare it as static, then all the subclasses will be using the same logger. If that's alright, then I can do that. I thought it would be clearer as an instance field. Also, since there's only a small number of providers, it doesn't really cost much.