You can't: what if I do this:
Program p1 = new Program();
Program k1 = p1;
K1.Print_InstanceName();
p1.Print_InstanceName();
What would you expect to print?
In your example, p1 and K1 are not instances to the Program class - they are variables that reference the instances. Objects generally do not have a Name property (controls do) but even if they did, they would not reflect the name that you give to variables in your code.