﻿# V6091\. Suspicious getter/setter implementation\. The 'A' field should probably be returned/assigned instead\.

Анализатор обнаружил геттер/сеттер, который обращается к полю, отличному от указанного в названии\.

Такие ошибки обычно появляются вследствие невнимательности, неаккуратного использования автодополнения или copy\-paste\. 

Рассмотрим пример, на котором анализатор выдаст предупреждение:

```cpp
public class Vector2i
{
  private int x;
  private int y;

  public void setX(int x)
  {
    this.x = x;
  }
  public int getX()
  {
    return x;
  }

  public void setY(int y)
  {
    this.y = y;
  }
  public int getY()
  {
    return x;              // <=
  }
}
```

Корректный вариант кода:

```cpp
public class Vector2i
{
  private int x;
  private int y;

  public void setX(int x)
  {
    this.x = x;
  }
  public int getX()
  {
    return x;
  }

  public void setY(int y)
  {
    this.y = y;
  }
  public int getY()
  {
    return y;
  }
}
```

Для реализации таких методов лучше использовать возможности IDE или кодогенерацию, предоставляемую библиотекой [Lombok](https://projectlombok.org/)\.