Two methods have the same signature if their method name, and the number, types, and/or order of its parameters are the same.
You can have methods with the same name in the same class as long as these methods have different parameters ( number, types, and/or order).
You cannot declare two methods with the same signature even if they have a different return type.