boolean (boolean allowNonFinalFields, PsiClass placeClass, PsiField field) { if (field.hasModifierProperty(PsiModifier.STATIC)) return true; if (field.getContainingClass() == placeClass) { if (isInitializedBeforeConstructor(field, placeClass) || isInitializedImplicitly(field)) { return true; } } return allowNonFinalFields && !field.hasModifierProperty(PsiModifier.FINAL); }