public class OverloadSapa {

    // Jumlah parameter berbeda
    static void sapa() {
        System.out.println("Halo!");
    }

    static void sapa(String nama) {
        System.out.println("Halo, " + nama + "!");
    }

    static void sapa(String nama, String kota) {
        System.out.println("Halo, " + nama + " dari " + kota + "!");
    }

    // Tipe parameter berbeda
    static void sapa(int jumlahSiswa) {
        System.out.println("Halo kepada " + jumlahSiswa + " siswa!");
    }

    // Urutan tipe parameter berbeda
    static void sapa(String nama, int umur) {
        System.out.println("Halo, " + nama + " (" + umur + " tahun)!");
    }

    static void sapa(int umur, String nama) {
        System.out.println("Umur " + umur + " milik " + nama + "!");
    }

    public static void main(String[] args) {
        sapa();
        sapa("Budi");
        sapa("Budi", "Bandung");
        sapa(30);
        sapa("Siti", 16);
        sapa(17, "Dewi");
    }
}
