If you overload the function like in your example, and instantiate the object normally, the equals function with SomeClass as parameter will be called if you provide a SomeClass to the equals function. For any other class, the equals function with an Object as parameter will be called.
If you instantiate your object as a parent class, however, the behaviour is different. This has to do with dynamic binding, which is explained quite well here: Question about Java overloading & dynamic binding
Note that if you're looking to do something else if the Object is of a SomeClass type, you could also use instanceof SomeClass
in your standard equals function. (Not trying to start a discussing, but it's an option)