It's confusing to have a class member with the same name as a method in the class.

Typically this situation indicates that the method is poorly named; method names should be action-oriented, and thus contain a verb, which is unlikely in the case where both a method and a member have the same name. However, renaming a public method could be disruptive to callers. Therefore renaming the member is the recommended action.

Noncompliant Code Sample

public class Foo {

  private string fiz;
  public String fiz() {
    // do something...
  }

  private void doSomething() {

    String tmp = fiz; // is this what was intended? Should this have been a call to fiz()?

  }
}

Compliant Solution

public class Foo {

  private string fizbah; // member has been renamed
  public String fiz() {
    // do something...
  }

  private void doSomething() {

    String tmp = fiz; // results in a compile error
    String tmp2 = fiz(); // no question now what was intended
  }
}