İki tür method vardır, return type'ı olan methodlar ve return type'ı olmayan (void) methodlar. Return type'ı olan methodlar olayın sonunda size o methodu hangi type'dan tanımladıysanız (int, byte, long short String...) o type'da bir değer vermek zorundadır yoksa syntax error alırsınız. Void method ise bir değer vermez ve genelde bir iş yapar. Örneğin ekrana bir şey basarken System.out.print(); dediğiniz zaman System class'ının out object'inin void return type'lı print methodunu invoke edersiniz ve bu method size bir değer dönmez, verdiğiniz parametreleri ekrana basma işini yapar. Return'un görevi methodun başından return'e kadar olan kodu execute ettikten sonra neyi return etmesini istediyseniz methodun dönütü olarak size onu methodun kendi return type'ında vermektir ve returnden methodun sonuna kadar olan kodu ihmal (omit) eder. Eğer return edeceği değer return type'dan farklıysa ve auto type cast edilemiyorsa ve siz de bunu manuel olarak yapmadıysanız yine syntax error alırsınız. Void methodda return type olmadığı için, size bir değer dönmeyeceği için sadece kalan kodu ihmal eder ve methodu bitirir.