difference betweeen public int a=0 and public int a; void Start(){ a=0; }

can anyone tell me what’s the difference between these?

    public int a = 1;

and

public int a;
void Start(){
	a = 1;
}

and which one is better to increase the performance???

Assigning a simple integer in Start or when you declare the attribute won’t change the performances at all.

However, since your integer is public, it can be changed using the inspector.

Thus, assigning the value in the Start method will override the value your designer (or you) have set in the inspector. When assigning the value when declaring the field, a will have its default value set to 1 when you attach / reset the component.