Sunday, April 5, 2015

[BELAJAR]Kelas, Method, Konstruktor di Java

Post sebelumnya membahas pentingnya kelas di dalam pemrograman java
Kali ini TS akan membagikan APA ITU KELAS? METHOD ? dan KONSTRUKTOR? di java
oke langsung aja.

Kelas

bagi yg baru belajar java pasti akan bingung.
Kok kelas di taruhnya beda file sih?  ya kelas bisa di taruh berbeda file / workplace agar kita gampang untuk memodifikasi, dan mengidentifikasi code code. tapi kelas juga bisa di taruh pada workplace main kelas tapi saya tidak merekomendasikan taruh di dalam main kelas karna akan susah memahami bagi yg pemula. oh iya jika anda membuat kelas sudah pasti kelas itu sendiri memiliki object , kita akan membahas tentang Object nanti.
mari lihat gambar berikut cara membuat kelas:

klik file pada netbeans lalu klik New File >> Categories: java >> File Types: Java Class

lalu beri nama : mahasiswa
klik finish jika sudah
maka tampilan awal kelas yg belum terisi Attribut dan Method seperti berikut:


package latihankelas;

public class mahasiswa {
    
}

dalam konsep OOP kelas memiliki attribut.
Di kelas juga terdapat Attribut.
Apa itu Attribut? Attribut adalah variabel yang di deklarasikan di dalam kelas.
dalam kasus ini kelas tersebut adalah mahasiswa, jadi mahasiswa harus memiliki attribut , attribut apakah yg biasanya ada di mahasiswa? biasanya terdapat nim, nama, alamat, email.
mari kita membuat Attribut:



package latihankelas;

public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
}

maksud dari public adalah , Attribut dari Nama, alamat, email, dan nim bisa di akses di luar kelas tersebut. itu dinamakan VISIBILITAS atau visibility.


Visibility

Visibilitas adalah suatu properti yg berguna untuk mengatur attribut dan method agar bisa di akses dan tidak di akses oleh kelas yang kita tentukan.
berikut adalah table kebenaran Visibility:

jadi Attribut Nama, alamat, dan email adalah public , kita bisa mengubah di kelas mana saja, tetapi pada Attribut Nim adalah private , jadi kita hanya bisa mengubah Attribut Nim di dalam kelas itu sendiri yaitu kelas mahasiswa.
Ahhh gapercaya ah broo.  gapercaya ?? oke kita buktikan, tapi sebelumnya tambahkan kode berikut di dalam kelas mahasiswa:


package latihankelas;

public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
    
    public void ubahdata(String nama,String alamat,String email) //ini adalah method
    {
        this.Nama = nama;
        this.Alamat = alamat;
        this.Email = email;
    }
    
    public void ubahnim(int nim) //ini adalah method
    {
        this.Nim = nim;
    }
}

lalu tulis code seperti ini di dalam main kelas:



package latihankelas;


public class Latihankelas {

    public static void main(String[] args) {
        mahasiswa junior = new mahasiswa(); //membuat object dari kelas mahasiswa
        junior.Nama = "ucok";
        junior.Alamat = "jl.hj boong";
        junior.Email = "squalvj@gmail.com";
        junior.Nim = 1234;      //tidak akan bisa di jalankan karna Nim mempunyai visibilitas private. jika baris ini dihapus baru akan bisa
        
        junior.ubahnim(1234);  //memakai method ubahnim baru bisa mengubah nim karna method tersebut berada di kelas yg sama
    }
}

coba jalankan programnya, pasti tidak akan bisa di jalankan karna nim mempunyai visibilitas Private, maka dari itu kita menggunakan method bernama ubahnim agar bisa mengubah nilai di attribut Nim karna method ubahnim mempunyai visibilitas public yg berarti kita bisa mengaksesnya di kelas mana saja. silahkan ubah kode script menjadi seperti ini agar bisa di jalankan:


maka program sukses di jalankan.
pada kasus ini , Object dari kelas mahasiswa yaitu junior , objek adalah suatu  data yang mempresentasikan sebuah kelas yang di wakilinya, pada kasus ini object mewakili kelas mahasiswa.


METHOD

di java terdapat 2 buah metode yaitu:

  1. 1.Fungsi
Fungsi merupakan metode yg memliki nilai balik jika metode tersebut dipanggilm cara pembuatan sebuah fungsi adalah dengan cara menentukan nilai baliknya, lalu membuat nama metodenya.
di dalam method jenis Fungsi , kita wajib menentukan return karna method jenis ini harus memliki return.

  1. 2.Prosedur
Prosedur, merupakan metode yang tidak memiliki nilai balik, cara pembuatan prosedur sama dengan fungsi , tapi bedanya hanya Prosedur tidak boleh memiliki nilai balik(return), Prosedur dibuat menggunakan kata kunci void sebelum deklarasi nama method.

tanpa sadar , anda sudah menggunakan method jenis prosedur dengan menuliskan script script yang di atas.


package latihankelas;

public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
    
    public void ubahdata(String nama,String alamat,String email) //ini adalah method berjenis PROSEDUR
    {
        this.Nama = nama;
        this.Alamat = alamat;
        this.Email = email;
    }
    
    public void ubahnim(int nim) //ini adalah method berjenis PROSEDUR
    {
        this.Nim = nim;
    }
}

method ubahnim dan ubahdata merupakan suatu Method berjenis prosedur.
mari kita lengkapi kode menjadi seperti ini:


package latihankelas;

public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
    
    public void ubahdata(String nama,String alamat,String email) //ini adalah method berjenis PROSEDUR
    {
        this.Nama = nama;
        this.Alamat = alamat;
        this.Email = email;
    }
    
    public void ubahnim(int nim) //ini adalah method berjenis PROSEDUR
    {
        this.Nim = nim;
    }

    public String tampilNama() //method fungsi
    {
        return Nama;
    }
    
    public String tampilAlamat() //method fungsi
    {
        return Alamat;
    }
    
    public String tampilEmail() //method fungsi
    {
        return Email;
    }
    
    public int tampilNim() //method fungsi
    {
        return Nim;
    }
}

contoh penggunaan:


package latihankelas;


public class Latihankelas {

    public static void main(String[] args) {
        mahasiswa junior = new mahasiswa(); //membuat object dari kelas mahasiswa
        junior.Nama = "ucok";
        junior.Alamat = "jl.hj boong";
        junior.Email = "squalvj@gmail.com";
        junior.Nim = 1234;      //tidak akan bisa di jalankan karna Nim mempunyai visibilitas private. jika baris ini dihapus baru akan bisa

        String nama = junior.tampilNama(); //penggunaan method fungsi
        System.out.println("nama junior adalah: " + nama); //menampilkannya
        
        junior.ubahnim(1234);  //memakai method ubahnim baru bisa mengubah nim karna method tersebut berada di kelas yg sama
    }
}

berikut penjelasannya mudah mudahan ngerti ya, maklum TS cupu bro edit pake paint wkwkwkw :D

oh iya di atas adalah contoh penggunaan parameter, parameter boleh tidak di isikan bro. artinya suatu Method boleh tidak ada parameter. Dan tipe data di parameter harus sama dengan tipe data yang akan di isikannya, apabila di parameter method ubahdata memiliki tipe data String untuk nama, maka kita tidak boleh mengisikan angka atau integer untuk mengisi di parameter Nama tersebut.



Konstruktor

Kontruktor merupakan metode yg secara otomatis dipanggil ketika sebuah objek dipanggil. Cara membuat metode konstruktor adalah, nama metode harus SAMA dengan nama kelas dan tidak mengembalikan nilai balik(return) dan tidak boleh juga menggunakan kata kunci void. silahkan lihat contohnya bro :



public class mahasiswa {
    public String Nama, Alamat, Email;
    private int Nim;
    
    public mahasiswa() //konstruktor
    {
        System.out.println("Objek mahasiswa dibuat!");
    }
    
    public mahasiswa(String nama, String alamat, String email, int nim)
    {
        this.Nama = nama;
        this.Alamat = alamat;
        this.Email = email;
        this.Nim = nim;
    }
}

lihat konstruktor mempunyai nama yg sama dengan kelas tersebut, dan konstruktor tidak memiliki return maupun kata kunci void.
nah contoh penggunaannya di dalam main kelas seperti ini bro:



public class Latihankelas {

    public static void main(String[] args) {
        mahasiswa junior = new mahasiswa(); //apabila di jalankan akan menghasilkan "Objek mahasiswa dibuat!"
        
        mahasiswa senior = new mahasiswa("Udin Gambrong", "Jl.hj boong", "Udin31@hajilulung.com", 12345);
       
        
    }
}

lihat penggunaannya dengan berbeda objek:

  • Junior

Objek junior memakai konstruktor yg tidak mempunyai parameter jadi apabila di jalankan akan menghasilkan output "Objek mahasiswa dibuat!"


  • Senior
objek Senior memakai konstruktor yang menggunakan parameter , jadi kita bisa mengisikan data langsung tanpa harus menggunakan method-method lainnya karna pada  parameter tersebut berfungsi untuk mengisikan data attribut di kelas mahasiswa

tanpa sadar anda sudah menggunakan method overloading di dalam skrip di atas , saya tidak akan menjelaskannya disini , mungkin nanti akan saya jelaskan di post post terbaru.


nahh sudah mengerti bukan tentang dasar dasar penggunaan Kelas, Method, Konstruktor, ini hanya pengetahuan dasar dalam menggunakan kelas, method , dan konstruktor. nanti kita akan belajar tentang kelas abstract, interface, overloading method, overloading Konstruktor, enumerasi, dll. maka dari itu kita harus mengerti konsep dasar seperti ini apabila ingin beralih ke konsep yang lebih Advance seperti yang saya singgung di atas. kalau konsep dasarnya saja tidak tahu tidak akan bisa tau konsep konsep Advance yang saya singgung di atas.

oke bro kalo ada yang bingung silahkan di tanyain ya bro , jangan malu bertanya brooo , ada pepatah ngomong:
Malu bertanya , sesat di jalan Googling di jalan. karna sekarang udh modern broo pepatahnya juga dah megang android, gausah lg tanya di jalan , tinggal buka google maps :D.

oke sekian ya artikel saya yang berantakan ini. 

Assalamualaikum Warrahmatullahi Wabarrakatuh

3 comments:

  1. nice gan, cocok buat saya yang masih newbie

    ReplyDelete
  2. makasih, aku sedikit-sedikit mulai paham

    ReplyDelete
  3. terimakasih gan atas informasinya, artikelnya cukup bagus dan mudah dipahami, sangat cocok untuk pemula

    ReplyDelete