FieldInitializer - mehdimo/janett GitHub Wiki

In both Java and C# languages, static fields can be initialized by static methods call. Also in Java, instance fields can be initialized by instance methods. But it is not allowed in .Net, so we move field initializer to class constructor.

If class has parameterless constructor, field initialization is added to it; otherwise, we create a parameterless constructor.

[Java]

public class A
{
    private int min = initialize();
    public int initialize()
    {
        return 0;
    }
}

[C#]

public class A
{
    private int min;
    public A()
    {
        min = initialize();
    }
    public int initialize()
    {
        return 0;
    }
}