If you change a method to static it still represents overloading, yes. You still have to make sure that the parameters are different types.
Yes, you can overload a method in a subclass, but it is probably not a good idea. Common mistake:
This will compile and run, but many classes in the API will expect the equals method to be overridden not overloaded, so classes will look for a
public boolean equals(Object o) method and may give incorrect or inapporpriate results.
And I see Rob Prime has beaten me by 6 minutes.
