Code Inspection: Field can be made readonly (Private Accessibility)
Last modified: 08 March 2021
tip
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)
{
this.name = name;
this.age = age;
}
public override string ToString() =>
$"Name: {Name}, Age: {Age}";
}
ReSharper can detect that private name
and age
fields are only being assigned in the constructor and offers to create an additional safeguard — by marking them readonly
, we get to ensure that this class will not inadvertently assign these fields anywhere within its methods.