Static keyword C# with Example



Static keyword C# with Example

The static keyword means 2 things: 
1. This value does not change from object to object but rather changes on a class as a whole 
2. Static properties and methods don't require an instance. 
public class Foo 
{ 
public Foo{ 
Counter++; 
NonStaticCounter++; 
} 
public static int Counter { get; set; } 
public int NonStaticCounter { get; set; } 
} 
public class Program 
{ 
static void Main(string[] args) 
{ 
//Create  an  instance 
var foo1 = new Foo(); 
Console.WriteLine(foo1.NonStaticCounter); //this will print "1" 
//Notice this next call doesn't access the instance but calls by the class name. 
Console.WriteLine(Foo.Counter); //this will also print "1" 
//Create  a  second  instance 
var foo2 = new Foo(); 
Console.WriteLine(foo2.NonStaticCounter); //this will print "1" 
Console.WriteLine(Foo.Counter); //this will now print "2" 
//The static property incremented on both instances and can persist for the whole class 
} 
} 
 

0 Comment's

Comment Form