Return-Type-Based Method Overloading in Java