BLANTERORBITv102

    Cara Membuat Pemrograman Berorientasi Objek (OOP) Di Java Part 1

    Sabtu, 18 Oktober 2014
    Object dan Class
    Objek adalah sesuatu yang nyata , yang memiliki variabel (yang menjabarkan karakteristik object tersebut) dan method yang saling berhubungan. Kemudian Class adalah kumpulan dari object-object yang memiliki karakteristik yang sama. Untuk membuat sebuah objek atau sebuah instance pada sebuah class. Kita menggunakan operator new.

    Method
    Didalam class atau dalam java , kita memiliki method default yaitu method main. Namun sebenarnya kita dapat memasukan banyak method untuk memanggil atau menjalankan preogram atau method yang berbeda pada satu class. Oleh karena itu method adalah bagian-bagian kode yang dapat dipanggil oleh program utama atau dari method lainnya untuk menjalankan fungsi yang spesifik.

    Beberapa karakteristik method :
    1. Dapat mengembalikan suatu nilai atau tidak.
    2. Dapat diterima oleh beberapa parameter (argumen dari fungsi) yang dibutuhkan atau tidak.
    3. Setelah method di eksekusi , method ini akan kembali kepada method yang memanggilnya. Contoh , method C di eksekusi , setelah sukses di eksekusi , method C akan kembali kepada method A , dimata method ada adalah method yang dapat melakukan pemanggilan method C.
    Method biasa difungsikan dalam java sebagai pemecah msaalah  yang komplek atau banyak menjadi beberapa bagian kecil.

    Pemberian Variabel Dalam Method

    • Pass by Value, dimana method membuat sebuah salinan dari nilai variable yang dikirimkan ke method. Walaupun demikian, method tidak dapat secara langsung memodifikasi nilai variabel pengirimnya meskipun parameter salinannya sudah dimodifikasi nilainya di dalam method. Pass by Value berlaku untuk tipe data primitif .

    Contoh pada java :
    
    package jsc.pkg1;
    /**
     *
     * @author Hady
     */
    public class javasc_passbyvalue {
        public static void main(String args []){
            int i = 40;
            System.out.println("Print variabel 1 : "+i);
            test (i);
            System.out.println("Print variabel 2 : "+i);
        }
        private static void test(int j) {
            j = 60;
        }
    } 

    passbyvalue


    Lihat Output pada gambar , terlihat jelas pada variabel j tidak di gunakan. Disini maksudnya variabel j hanya variabel pengganti pada method test , jika nilai j berubah maka nilai variabel i yang terletak pada main tidak akan ikut berubah walaupun awalnya variabel j merupakan salinan dari variabel i.

    • Pass by Reference , ketika sebuah pass-by-reference terjadi, alamat memori dari nilai pada sebuah variabel dilewatkan pada saat pemanggilan method. Hal ini berarti bahwa method menyalin alamat memori dari variabel yang dilewatkan pada method. Ini tidak seperti pada pass-by-value, method dapat memodifikasi variabel asli dengan menggunakan alamat memori tersebut, meskipun berbeda nama variabel yang digunakan dalam method dengan variabel aslinya, kedua variabel ini menunjukkan lokasi dari data yang sama.
    Contoh pada java :
    
    package jsc.pkg1;
    /**
     *
     * @author Hady
     */
    public class passbyreference {
        public static void main (String args []){
            int ages[] = {10, 20, 30};
            for (int i=0; i<ages.length; i++){
                System.out.println(ages[i]);
            }
            
            test(ages);
            for (int i=0; i<ages.length; i++){
                System.out.println(ages[i]);
            }
        }
        
        public static void test(int arr[]){
            for (int i=0; i<arr.length; i++)
                arr[i] = i + 100;
        }
    }

    passbyreference

    Constructor
    Construktor adalah method yang menginisialisasi nilai awal untuk data pada sebuah class. Construktor memiliki persamaan nama dengan class yang akan dipanggil. Contoh program pada java , pertama buat 2 buah class dimana class pertama sebagai main yang akan memanggil class lain.

    Class main :
    
    package segitiga;
    public class main {
        public static void main(String[] args) {     
           itung2an Luas1= new itung2an(5,4);
           System.out.println("Luas Segitiga dengan alas " + Luas1.alas +
                   " dan Tinggi "+Luas1.tinggi+" adalah " + Luas1.luas());
           itung2an Luas2= new itung2an(6,5);
           System.out.println("Luas Segitiga dengan alas " + Luas2.alas +
                   " dan Tinggi "+Luas2.tinggi+" adalah  "+ Luas2.luas());
           }
    }

    Kemudian class kedua dengan nama itung2an :
    
    package segitiga;
    public class itung2an {
     double alas,tinggi;
    itung2an(double t, double a)
    {
        alas=a;
        tinggi=t;
    }
    double luas()
    {
        return (alas * tinggi)/2;
    }
    }

    Pada class main , terdapat construktor berparameter (itung2an Luas1= new itung2an(5,4);) dimana 5 dan 4 akan di inisialisasikan sebagai alas dan tinggi. Lihat output program :

    Construktor

    Artikel ini masih berlanjut , karena terlalu panjang jadi saya buat menjadi 2 part atau 3 part. Untuk sementara yang telah dibahas yakni : Object dan Class , Method , Pemberian variabel pada method , dan Construktor pada java. 

    Terimakasih sudah berkesempatan untuk menimba ilmu dari blog JSC, semoga ilmu yang di share dapat bermanfaat. Jika ada pertanyaan mengenai ilmu yang terkait ataupun tidak, mari kita berdiskusi di dalam kolom komentar ini.

    Keep Learning and Keep Sharing