PsiField (@NotNull Project project, @NotNull PsiParameter myParameter) { JavaCodeStyleManager styleManager = JavaCodeStyleManager.getInstance(project); String parameterName = myParameter.getName(); String propertyName = styleManager.variableNameToPropertyName(parameterName, VariableKind.PARAMETER); PsiMethod method = (PsiMethod)myParameter.getDeclarationScope(); boolean isMethodStatic = method.hasModifierProperty(PsiModifier.STATIC); VariableKind kind = isMethodStatic ? VariableKind.STATIC_FIELD : VariableKind.FIELD; SuggestedNameInfo suggestedNameInfo = styleManager.suggestVariableName(kind, propertyName, null, FieldFromParameterUtils.getSubstitutedType(myParameter)); String fieldName = suggestedNameInfo.names[0]; PsiClass aClass = method.getContainingClass(); if (aClass == null) return null; PsiField field = aClass.findFieldByName(fieldName, false); if (field == null) return null; if (!field.hasModifierProperty(PsiModifier.STATIC) && isMethodStatic) return null; return field; }