JetBrains Rider
 
2024.2
Get JetBrains Rider
You are viewing the documentation for an earlier version of JetBrains Rider.

Code inspection: Field can be made readonly (private accessibility)

Last modified: 11 February 2024

Say you have decided to make an immutable Person class, initialized only via the constructor. You go ahead and implement the following:

public class Person
{
  private string _name;
  private int _age;
  public Person(string name, int age)
  {
    _name = name;
    _age = age;
  }
  public override string ToString() =>
    $"Name: {_name}, Age: {_age}";
}

JetBrains Rider can detect that the fields are only being assigned in the constructor and offers to create an additional safeguard: by marking them readonly, we get to ensure that neither this class nor its users will inadvertently assign new values to these fields.