```
List<Employee> staff = new List<Employee>();
Employee newHire = new Employee("John Smith", "1101");
staff.Add(newHire);
if (staff.Contains(newHire))
    Console.WriteLine("Yes the list contains the item we just added\n\t{0}", newHire.ToString());

newHire = new Employee("John Smith", "1101");
if (staff.Contains(newHire))
    Console.WriteLine("The list also contains this Employee");
else
     Console.WriteLine("Nope, can't find John Smith");

```

the code is used to explain how `Contains()` use, but I am confused about the 
instance newHire. It seems that we create this instance twice, And I don't know what is the difference between them.
I am new to C#, and English is not my native language.