Laman

Minggu, 14 Oktober 2012

Construktor,Overload Construktor, Dan Overload Method


I.       Dasar Teori
Konstruktor
            Setelah mengetahui alat untuk menciptakan objek, sekarang yang menjadi pertanyaan adalah bagaimana cara menciptakan objek menggunakan sebuah kelas. Jawabannya adalah dengan menggunakan sebuah Konstruktor.
            Apakah sebuah konstruktor itu ?  Konstruktor adalah bagian dari definisi suatu kelas yang berfungsi menciptakan instans dari kelas tersebut. Konstruktor ini bisa kita buat sendiri, atau bila kita tidak mendefinisikannya, maka kompiler java akan membuatkan konstruktor default untuk kelas tersebut pada saat kompilasi. Yang perlu diperhatikan adalah bahwa suatu konstruktor tidak termasuk anggota suatu kelas seperti metode dan variabel dan bahwa konstruktor bisa dibuat lebih dari satu.
            Bentuk konstruktor sendiri mirip dengan  sebuah metode. Beda yang paling mencolok adalah nama sebuah konstruktor harus sama dengan nama kelas tersebut dan kontruktor tidak memiliki definisi return type seperti sebuah metode.
            Hal-hal yang perlu diperhatikan dalam membuat sebuah konstruktor :
1.         Konstruktor harus menggunakan nama yang sama dengan class termasuk huruf besar dan kecilnya.
2.         Dalam satu class bisa terdapat lebih dari satu konstruktor.
3.         Konstruktor akan dieksekusi setiap kali ada pembuatan objek.
4.         Setiap class harus mempunyai paling tidak sebuah konstruktor.
5.         Jika sudah mendeklarasikan konstruktor, maka konstruktor default tidak akan dibuat oleh kompiler java.

Sebuah class yang memiliki beberapa konstruktor digunakan untuk keperluaan berikut :
1.  Menentukan nilai Instance variabel yang berbeda, Jadi, pada setiap konstruktor diinisialisasi variabel yang berbeda.
2.    Melakukan tugas awal dengan menjalankan metode tertentu, seperti untuk melakukan perhitungan. Jadi, selama konstruktor dijalankan, akan dilakukan perhitungan.

 Overload Constructor
         Selain pada method normal pada umumnya, proses overload juga dapat diaplikasikan kedalam contructor suatu kelas. Hal ini disebabkan karena sebenarnya konstruktor juga adalah sebuah method yang mengembalikan tipe kelas. Pada kenyataan dilapangan, suatu kelas pada umumnya justru memiliki lebih dari satu konstruktor.
Contoh sebuah class dengan menggunakan Overload Construktor :
public class Hewan {

    String Monyet;

    public Hewan(String m) {
        Monyet = m;
    }

    public Hewan() {
        Monyet = null;
    }

    public String show() {
        return Monyet;
    }

    public static void main(String[] args) {
        Hewan Monkey = new Hewan(" George ");
        System.out.println("Monkey Name : " + Monkey.show());
    }
}

OUTPUT :








 Overload Method
         Dalam suatu kelas, kita dapat mendefinisikan lebih dari satu method dengan nama yang sama, selama parameter yang terdapat pada method-method tersebut berbeda. Parameter dalam suatu method dikatakan berbeda dari method lainnya apabila :
·         Jumlahnya berbeda, meskipun tipe datanya sama
·         Tipe datanya berbeda, meskipun jumlahnya sama
·         Jumlah dan tipe datanya berbeda

Contoh sebuah class menggunakan Oerload Method :

           public class Ganjil_Genap3 {
    int ganjil;
    int genap;

    public void ganjilgenap(int x) {
        ganjil = x;
        System.out.print("Bilangan Ganjil = ");
        for (int i = 1; i <= ganjil; i++) {
            if (i % 2 != 0) {
                System.out.print(" " + i);
            }
        } System.out.println(" ");
    }
    public void ganjilgenap(double y){
        genap = (int)y;
        System.out.print("Bilangan Genap = ");
        for (double i = 1; i <= genap; i++) {
            if (i % 2 == 0) {
                System.out.print(" " + i);
            }
        }
        System.out.println(" ");
    }

    public static void main(String[] args) {
        Ganjil_Genap3 hasil = new Ganjil_Genap3();
        hasil.ganjilgenap(50);
        hasil.ganjilgenap(50.0);
        
        
    }
}

OUTPUT :

Tidak ada komentar:

Posting Komentar