Can you have two classes with the same name in the same project?
Yes, as long as their constructors are different.
No, you cannot.
Yes, as long as their methods are different.
Yes, as long as they are in different namespaces.