Reports inner class fields named identically to visible fields of the containing classes. As a result of such naming, you may accidentally use the field from the inner class where the identically named field of a containing class is intended.

A quick-fix is suggested to rename the inner class field.

Example:


  class Outer {
    private String name;

    class Inner {
      private String name;
    }
  }

Use the option to choose whether this inspection should report all name clashes, or only clashes with fields that are visible from the inner class.