Isn\'t var a keyword in C#? But why can I do this:
var
public class var { } public class main { public static void main(string[] args) {
The compiler is smart enough to know that the context you are using var as a class name is never a context for the keyword so allows it (which is why it is defined as a contextual keyword).