SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Downloaden Sie, um offline zu lesen
Novan Surya Ardani




            PEMOGRAMAN BERORIENTASI OBJECT
VANDEROID
            JAVA & PHP




                first book release on 2012
Pemograman Berorientasi Object

     JAVA & PHP




       NOVAN SURYA ARDANI




          Release on april 2012

      www.vanderocks.wordpress.com




                                     i
Pemograman Berorientasi Object

          JAVA & PHP




Dilarang mengubah, menterjemahkan, dan menjual buku
ini tanpa seiijin penulis. Buku ini dibagikan secara Cuma-
cuma atau gratis bagi anda, sehingga anda hanya dapat
memperbanyak dan menyebarkan saja. Terima Kasih.




                                                             ii
Kata Pengantar



Beberapa bahasa pemograman saat ini banyak yang condong pada metode

OOP (Object Oriented Programming),      Metode OOP sangatlah powefull,

karena metode ini memnberikan keuntungan berupa fleksibilitas yang tinggi

dalam mengembangkan perangkat lunak, baik dalam skalabilitas yang

besar, selain itu adalah kemudahan dan kecepatan dalam maintance atau

memelihara aplikasi. Bahasa pemograman yang penulis gunakan adalah

bahasa pemograman Java dan PHP menggunakan pendekatan OOP


Buku ini ditujukan bagi siapa saja yang ingin mempelajari bahasa

pemograman Java dan PHP berbasis OOP . Anda akan dituntun untuk

memahami struktur kontrol, OOP, Array, dan Exception Handling, dan

bagaimana mengimplementasikannya kedalam program.


Ahkir kata,   penulis menyadari dalam buku ini tentu masih terdapat

kekurangan, anda dapat mengirimkan saran, kritik, dan pertanyaan yang

membangun pada website penulis, www.liv3d_rocks.@yahoo.com.


                                                     Malang, April 2012


                                                     Novan Surya Ardani




                                                                       iii
Object Oriented Programming Java & PHP
____________________________________________________


A. PENGENALAN BAHASA PEMOGRAMAN

  1.   PHP
       PHP merupakan bahasa pemograman yang berjalan di sisi server
       (server side), sehingga kode program PHP diproses disisi server
       dan output dari program PHP ditampilkan pada sisi client (client
       side). Contoh Server Side seperti Apache dan contoh Client Side
       adalah web browser (mozilla, opera, safari, IE, dan sebagainya).

       Ketika menulis program menggunakan PHP, kode program
       diletakkan diatara tag pembuka dan diahkiri dengan tag penutup
       Hal ini bertujuan untuk memastikan bahwa program yang berada
       diantara tag tersebut adalah program PHP, bukan program lain.

             <?php                         # tag pembuka PHP

              {kode program php}

             ?>                            # tag penutup PHP

       Contoh program sederhana menampilkan output “Belajar PHP”

           <?php

              echo “Belajar PHP”;

             ?>

       Pada baris echo “Belajar PHP”, echo merupakan kode program
       untuk mencetak output Belajar PHP. Coba anda hilangkan tag
       <?php ?>, yang terjadi adalah echo “Belajar PHP” akan
       ditampilkan semua, hal ini karena server PHP tidak dapat
       memproses kode tanpa diawali tag pembuka PHP dan tag
       penutup PHP.



                                                                     1
Object Oriented Programming Java & PHP
____________________________________________________


2.   JAVA
     Java merupakan bahasa pemogramman berorientasi object murni
     yang dikembangkan oleh sun microsystem Jika sebelumnya anda
     pernah mempelajari bahasa pemograman C, maka tidak jauh
     berbeda dengan bahasa pemograman Java. Karena Java merupakan
     bahasa pemograman berorientasi object, maka data dan fungsi
     dikelompokkan kedalam kelas (class) atau objek. Data dan fungsi
     bisa berupa perintah atau kode program java.

        class KelasJava {

            {data dan fungsi}

        }

     Salah satu data dan fungsi yang terpenting dan selalu dgunakan
     adalah fungsi main. Kode program yang diletakkan di dalam
     fungsi main, maka akan diekseskusi (dijalankan) pertama kali.

        class KelasJava {

             public static void main (String[] args) {
                {kode program java yang di ekseskusi pertama kali}
             }
        }

     Contoh program sederhana menampilkan output “Belajar JAVA”

        class KelasJava {

             public static void main (String[] args ) {
                System.out.println (“Belajar JAVA”);
             }
        }




                                                                     2
Object Oriented Programming Java & PHP
____________________________________________________


 Pada baris System.out.println (“Belajar Java”), System.out.println
 merupakan kode program untuk mencetak output Belajar Java di
 layar. Dimana kode ini pertama kali diekseskusi karena diletakkan
 diantara kurung kurawal { } pada fungsi main ( ) .

 Bagaimana mengekseskusi program yang berada di dalam sebuah
 kelas tertentu ? contohnya ketika ingin menampilkan output Belajar
 Java, tanpa meletakkan kode program secara langsung pada fungsi
 main ( ), tapi diletakkan didalam kelas KelasJava.

       class KelasJava {

         System.out.println (“Belajar Java”);

            public static void main (String[] args) {

            }
        }

 Untuk mengeksekusi baris kode “System.out.println (“Belajar Java”),
 pertama kali membuat fungsi atau method untuk membungkus kode
 tersebut.

       class KelasJava {

            public void FungsiCetak ( ) {

                System.out.println (“Belajar Java”);

            }

            public static void main (String[] args) {

            }
        }




                                                                   3
Object Oriented Programming Java & PHP
____________________________________________________


 Pada baris kode “public void FungsiCetak ( )” merupakan method
 yang telah kita buat bernama FungsiCetak ( ) untuk membungkus
 kode program “System.out.println (“Belajar Java”).

 Untuk mengekseskusinya, cukup memanggil fungsi FungsiCetak ( ),
 kedalam mehod main ( ). Namun untuk memanggilnya, kita harus
 membuat objek dari class KelasJava terlebih dahulu menggunakan
 perintah new, objek yang dibuat diletakkan kedalam fungsi main ( ).

        class KelasJava {

             public void FungsiCetak ( ) {

                 System.out.println (“Belajar Java”);

             }

             public static void main (String[] args) {

                    KelasJava var = new KelasJava ( );
                    var. FungsiCetak ( );
             }
         }

 Pada baris program :

 KelasJava var = new KelasJava ( );
 Digunakan untuk membuat objek baru dari kelas KelasJava
 menggunakan keyword new. var merupakan variabel reference yang
 berfungsi untuk mereferensi atau merujuk (memanggil) method
 FungsiCetak ( ).

 var. FungsiCetak ( );
 var sebagai variabel reference yang diciptakan oleh objek KelasJava
 merujuk ke method FungsiCetak ( ) menggunakan tanda titik.



                                                                   4
Object Oriented Programming Java & PHP
____________________________________________________


  3. Catatan Penting Penulis

    Agar program PHP dapat diproses, harus diletakkan di dalam
     tag pembuka ( <?php ) dan tag penutup ( ?> ).

    Program yang diletakkan pada fungsi main, akan dieksekusi
     terlebih dahulu.

    Kode program yang di diletakkan di dalam sebuah kelas, harus
     di bungkus kedalam sebuah fungsi atau method, kecuali atribut
     yang di definiskan sendiri.

    Untuk mengakses fungsi atau method, maka harus membuat
     objek dari suatu kelas beserta variabel reference untuk merujuk
     dan mengakses suatu fungsi atau method.

    Umumnya, objek diletakkan pada method main, agar dapat
     mengeksekusi fungsi-fungsi yang terdapat pada suatu kelas.

    Setelah anda mempelajari bagian pengenalan bahasa
     pemograman, maka pada bagian berikutnya yaitu struktur
     control, OOP, Array, dan Exception Handling, penulis tidak
     menyertakan fungsi main pada Java dan penulis tidak
     menyertakan tag PHP, tujuannya agar penulisan program lebih
     sederhana dan tidak terlalu panjang berbelit-belit.

    Tool yang digunakan untuk menulis program adalah IDE
     Netbeans




                                                                   5
Object Oriented Programming Java & PHP
____________________________________________________


A. TOOL IDE NETBEANS
   IDE Netbeans atau Integrate Development Kit Netbeans merupakan
   aplikasi open source, untuk membuat atau mengembangkan aplikasi
   baik dalam skala yang kecil maupun besar. Dengan IDE Netbeans
   kita bisa menuliskan program, mengcompile program, dan
   menganalisa proses error sebuah program. Dalam perkembangannya
   IDE Netbeans sudah terintegrasi beberapa bahasa pemograman
   seperti Java, PHP, C++, Ruby, dan sebagainya.

   1.   Membuat Aplikasi Pertama
        Untuk membuat aplikasi menggunakan IDE Netbeans, maka
        anda harus membuat projectnya dulu.
          Buka IDE Netbeans anda kemudian pilih menu File 
             New Project. Maka akan muncul tampilan berikut.




           Kemudian anda pilih salah satu kategories bahasa
            pemograman yang anda gunakan, contohnya Java, lalu
            anda perluas lagi dikotak sebelah kanan pilih Java
            Application. Kemudian pilih Next.



                                                                6
Object Oriented Programming Java & PHP
____________________________________________________


    Kemudian setting Nama Project (Project Name), lokasi project
     (Project Location), dan lokasi Folder akar project (Project Folder)
     anda berada, dan hilangkan tanda centang pada Create Main Class
     Kemudian klik finish. Maka project sudah terbentuk




    Jika proses pembuatan project berhasil maka project BelajarJava
     akan ditampilkan sebagai berikut ini.




    Kemudian tinggal menambahkan file-file yang dibutuhkan
     kedalam project anda. Untuk menambahkan file class, click kanan
     pada Source Packages , pilih New  Java Main Class




                                                                      7
Object Oriented Programming Java & PHP
____________________________________________________


   Tampilan untuk mendefiniskan kelas baru, pada Class Name isikan
   nama kelas, contohnya KelasPertamaku, kemudian klik finish.




 Jika proses pembuatan kelas berhasil, maka halaman editor program
  dari class KelasPertamaku akan ditampilkan sebagai berikut.




 Selanjutnya, Happy coding ....
 Untuk penempatan lokasi file pada PHP agak sedikit berbeda,
  dimana folder akar harus anda tempatkan pada AppServ  www
 Kemudian untuk mengeksekusi atau mengcompile program anda,
  cukup tekan pada keyboard anda SHIFT + F6.



                                                                     8
Object Oriented Programming Java & PHP
____________________________________________________


B. PEMOGRAMAN DASAR

   1.   Menampilkan Output Program
        Dalam bahasa pemograman apapun, pasti membutuhkan output
        untuk menampilkan hasil di layar dari program yang dibuat.
        Sehingga programmer dapat memantau kesalahan kode
        programnya atau kesalahan logika programnya.

                      Java                            PHP

           System.out.print
                                             echo “Welcome PHP”;
           (“Welcome Java”);
                                             print “Welcome PHP”;
           System.out.println
           (“Welcome Java” );
                             Output : Welcome PHP


        Pada pemograman java, terdapat perbedaan antara fungsi print
        dan println, perbedaanya jika fungsi println setelah mencetak
        Welcome Java, maka kursor berpindah ke baris baru, jika
        fungsi print maka cursor tidak berubah. Untuk menguji
        hasilnya, anda dapat mencetak Welcome Java masing-masing
        sebanyak 2 kali menggunakan fungsi print dan fungsi println.
        Maka hasil yang didapatkan sebagai berikut :

                    Print ( )                       Println ( )

           Welcome JavaWelcome Java             Welcome Java
                                                Welcome Java




                                                                    9
Object Oriented Programming Java & PHP
____________________________________________________


2. Tipe Data
   Tipe data digunakan untuk menentukan jenis penyimpanan nilai
   variabel. Nilai variabel dapat berupa angka, huruf, karakter. Agar
   nilai variabel dapat dikenali oleh sistem, maka tipe data harus
   disesuaikan. Jika nilai variabelnya huruf, maka tipe datanya String,
   jika nilai variabelnya angka, maka tipe datanya Integer, Double,
   Float, Long, jika nilai variabelnya karakter, maka tipe datanya Char.
   Bentuk deklarasinya sebagai berikut :
      - [Tipe Data] [Variabel] = [Nilai Variabel]; (Java)
      - $[Variabel] = [Nilai Variabel];           (PHP)

                     Java                                 PHP

    String huruf     = “vanderoid”;       $huruf      =   “vanderoid”;
    int angka        = 12345;             $angka      =   12345;
    double desimal   = 1.12               $desimal    =   1.12
    char karakter    = „A‟;               $karakter   =   ‟A‟;


   Perhatikan perbedaan penggunaan Tipe data kedua bahasa
   pemograman diatas, pendeklarasian tipe data pada Java lebih jelas
   dibandingkan dengan PHP. Java menyertakan jenis Tipe datanya,
   sedangkan PHP tidak, penggantinya mengunakan simbol $(dolar).
   Pertanyaannya, “Bagaimana sistem mengenali tipe data pada PHP ?
   “, Jawabannya adalah dari nilai variabelnya.

                     Java                                 PHP

      String nama = “Vanderoid”;            $nama = “Vanderoid”;

      // tanpa quote                        // tanpa quote
      System.out.println (nama);             echo ($nama);




                                                                         10
Object Oriented Programming Java & PHP
____________________________________________________


UMPAN BALIK

  1. Bagaimana mencetak nilai1, nilai2, nilai3 hanya menggunakan
     sebuah fungsi cetak saja ?

     Jawab : tambahkan tanda (+) sehingga programnya menjadi
       System.out.println ( “Nilai 1” + “Nilai 2” + “Nilai 3”);

      Sama dengan anda menuliskan program sebagai berikut
       System.out.println ( “Nilai 1”);
       System.out.println ( “Nilai 2”);
       System.out.println ( “Nilai 3”);

      Jika pada program PHP anda tambahkan simbol titik (.)
       echo “Nilai 1” .” Nilai 2 . “Nilai 3”;

      Sama dengan anda menuliskan program sebagai berikut :
       echo ( “Nilai 1”);
       echo ( “Nilai 2”);
       echo ( “Nilai 3”);

   2. Apakah ada cara lain untuk pertanyaan nomer satu ?
      Jawab : Ada, membuat variabel dan memanggilnya.
       String varNilai2 = “Nilai2”;
       String varNilai3 = “Nilai3”;
       // varNilai2 dan varNilai3 jangan memakai tanda quote
       System.out.println (“Nilai 1” + varNilai2 + varNilai3);

       $varNilai1 = “Nilai 2”;
       $varNilai2 = “Nilai 3”;

       // varNilai2 dan varNilai3 jangan memakai tanda quote
       echo “Nilai 1” .varNilai2 .varNilai3 ;




                                                                  11
Object Oriented Programming Java & PHP
____________________________________________________


C. STRUKTUR KONTROL

  Struktur kontrol merupakan mekanisme untuk mengontrol alur
  program yang bergantung pada kondisi yang ditentukan

  1. If-Else
     Penggunaan if-else berfungsi untuk mengontrol kondisi yang
     sudah ditentukan, sebuah kondisi memungkinkan terdapat
     sebuah pernyataan. Contohnya jika saya makan (kondisi)
     maka kenyang (pernyataan), jika tidak makan (kondisi) maka
     lapar (pernyataan). Pendeklarasian if.-else :
       if ( kondisi 1 ) {
            Pernyataan 1 diekseskusi jika kondisi 1 benar
       }
       else {
            Pernyataan 2 diekseskusi jika kondisi 1 salah
       }

                      Java                                  PHP

      String perut = “makan”;                 $perut = “makan

       if (perut==”makan”) {                 if ($perut==”makan”){
          System.out.println (“Kenyang”);       echo “Kenyang” ;
       }                                     }
       else {                                else {
          System.out.println (“Lapar”);         echo “Lapar” ;
       }                                     }
                                Output : Kenyang


     Variabel perut nilainy makan, artinya jika (if) kondisi perut
     nilainya sama dengan makan (perut==”makan”), maka
     pernyataan kenyang dieksekusi. Untuk menguji kondisi else,
     anda bisa mengubah nilai variabel perut dengan lainnya.



                                                                     12
Object Oriented Programming Java & PHP
____________________________________________________


 maka pernyataan Lapar dieksekusi. Pertanyaannya mengapa
 pernyataan Lapar tidak spesifik ketika varibel perut diganti? artinya
 jika variabelnya diisi apapun maka kondisi elsenya tetap lapar. Untuk
 mengatasi permasalahan ini kita dapat menggunakan if bersarang
 (Nested If). Pendeklarasiannya :
    if ( kondisi 1 ) {
         Pernyataan 1 dieksekusi jika kondisi 1 sesuai
     }
     else if (kondisi 2) {
        Pernyataan 2 dieksekusi jika kondisi 1 tidak sesuai
    }
    else {
        Pernyataan 3 dieksekusi jika kondisi 1 dan 2 tidak sesuai
    }

                 Java                                  PHP

  String perut = “puasa”;                 $ perut = “puasa”;

  if (perut==” makan”) {                 if (perut==” makan”) {
     System.out.println (“kenyang”);        echo “kenyang” ;
  }                                      }
  else if (perut==”puasa” ){             else if (perut==”puasa” ){
     System.out.println (“lapar” );         echo “lapar”
  }                                      }
  else {                                 else {
     System.out.println (“Invalid );        echo “Invalid” ;
  }                                      }
                              Output : Lapar

 Variabel perut nilainya puasa, maka kondisi yang cocok adalah else if
 (perut==”puasa”) dengan pernyataan “lapar”. Jika variabel perut
 nilainya diganti atau kosong, maka kondisi else dieksekusi dengan
 pernyataaan “Invalid” atau tidak ada pilihan yang cocok.




                                                                      13
Object Oriented Programming Java & PHP
____________________________________________________


     1.    Switch-Case
2.


      Penggunaan switch-case hampir sama dengan if-else, dan switch-
      case menyajikan pilihan lebih banyak, seperti pada nested if. Kerja
      dari switch-case adalah membandingan nilai (kondisi) pada switch
      terhadap case pertama hingga case selanjutnya, hingga ditemukan
      nilai (kondisi) case yang sesuai. Bentuk deklarasi swicth-case
      sebagai berikut :
            switch (kondisi) {
                case 1: pernyataan 1;
                        break;
                 case 2: pernyataan 2;
                         break;
                 case 3: pernyataan 3;
                             break;
                 .....................................
                 default : pernyataan default;
            }
      Proses kerja dari switch-case
                Case            Nilai      Kondisi          Pernyataan
          Case pertama            1            3         Tidak Cocok
          Case kedua              2            3         Tidak Cocok
          Case ketiga             3            3         Cocok

      Case pertama nilainya 1 tidak sama dengan 3, maka pernyataan
      pada case pertama tidak dijalankan.
      Case kedua nilainya 2 tidak sama dengan 3, maka pernyataan pada
      case kedua tidak dijalankan.
      Case ketiga kondisinya cocok dengan 3, maka proses dibreak atau
      dihentikan dan pernyataan pada case ketiga dijalankan.




                                                                         14
Object Oriented Programming Java & PHP
 ____________________________________________________



      int CariNilai = 2;                           $CariNilai = 2;

      switch (CariNilai) {                         switch ($CariNilai) {
        case 1:                                      case 1:
        System.out.println("Nilai 1");                  echo "Nilai 1";
           break;                                       break;

          case 2:                                      case 2:
          System.out.println("Nilai 2");                 echo "Nilai 2";
            break;                                       break;

          case 3:                                      case 3:
          System.out.println("Nilai 3");                 echo "Nilai 3";
            break;                                       break;

          default:                                     default:
          System.out.println("Invalid");                 echo "Invalid";
      }                                            }
                                Output : Nilai 2

   Variabel CariNilai ingin mencari nilai 2 yang sesuai pada setiap case,
   ketika dicocokan dengan case 1 tidak cocok, kemudian dicocokan
   dengan case 2 ternyata nilainya sama, maka proses dibreak
   (dihentikan) dan pernyataan dieksekusi, dan case 3 tidak dijalankan
   atau ditelusuri lagi karena pada case 2 dibreak (dihentikan).

2. While
   While berfungsi sebagai iterasi atau perulangan, dimana penggunaan
   while lebih praktis ketika anda ingin melakukan perulangan terhadap
   suatu perintah yang banyak secara bersamaan tanpa harus menulis
   perintah satu persatu. Bentuk deklarasi while:
      while (kondisi) {
         pernyataan
      }
    Contohnya ketika kita ingin mencetak nilai 1 sampai 5.


                                                                           15
Object Oriented Programming Java & PHP
____________________________________________________


          Menggunakan While                     Tanpa While

      angka = 1;                          Cetak _layar (1);
      jumlah = 5;                         Cetak _layar (2);
      while (angka <= jumlah) {           Cetak _layar (3);
        cetak _layar (angka);
                                          Cetak _layar (4);
        angka++;
      }                                   Cetak _layar (5);



   Selama nilai 5 (variabel jumlah) lebih kecil atau sama dengan nilai 1
   (variabel angka), maka fungsi cetak_layar() akan terus dijalankan
   (mencetak) dengan kenaikan 1 (increment) yang dikerjakan perintah
   angka++.

3. For
   For seperti halnya while, yang berfungsi sebagai perulangan. Bentuk
   penulisan for sebagai berikut.

        for (inisialisasi; kondisi; iterasi [increment | decrement]) {
             Pernyataan
        }
   Inisialisasi    : Menginisialisasi nilai awal, dan ekseskusi hanya
                     dilakukan sekali.
   Kondisi        : Mengecek kondisi, selama kondisi true(memenuhi),
                     perintah terus diulang dan pernyataan terus dieksekusi
                     hingga break (dihentikan) ketika nilainya false.
   Iterasi        : Selama kondisi bernilai true (memenuhi), iterasi
                     juga akan dikerjakan.




                                                                         16
Object Oriented Programming Java & PHP
____________________________________________________


                Java                                         PHP

  int inisialisasi = 0;                        $inisialisasi = 0;
  int kondisi = 5;                             $kondisi      = 5;

  for(int i=inisialisasi; i< kondisi;          for($i=$inisialisasi;$i<$kondisi;
  i++) {                                       $i++) {
       System.out.println (i);                      echo $i;
   }                                             }

                             Output : 1 2 3 4 5


UMPAN BALIK

 1. Apakah mungkin for di dalam for (nested for) ?
    Jawab : Pasti bisa. Jika menggunakan for bersarang maka for yang
    pertama kali dieksekusi adalah for kedua, kemudian for pertama.
    Contohnya sebagai berikut.
        for (i=0; i < 3; i++) {             // for pertama
               for (j=0; j < 5; j++ )       // for kedua
                {
                  Cetak_layar ( j );        // Cetak kelayar selama false
               }
           Cetak_layar ( n );              // Perintah pindah baris
         }

    Setiap for kedua terpenuhi kondisinya, maka for pertama akan
    mengiterasi for kedua hingga 3 kali. Proses dan hasilnya adalah

         1          2        3          4       5      Iterasi for (i1)
         1          2        3          4       5      Iterasi for (i2)
         1          2        3          4       5      Iterasi for (i3)




                                                                                   17
Object Oriented Programming Java & PHP
____________________________________________________


D. Konsep Dasar OOP
  OOP atau Object Oriented Programming merupakan paradigma
  pemograman yang berorientasi kepada Object. Semua data dan
  fungsi dibungkus kedalam Objek atau Kelas (Class). Keuntungan
  menggunakan pendekatan OOP adalah kemudahan dan fleksibilitas
  tinggi dalam mengembangkan perangkat lunak yang powerfull dan
  memungkinkan pengembangan perangkat lunak dalam skalabilitas
  besar, pendekatan OOP jauh lebih baik dibandingkan pendekatan
  pemograman secara prosedural.

  Untuk memahami pemograman berbasis OOP, maka ada baiknya
  anda memahami konsep-konsep dari OOP yang nantinya banyak
  digunakan dalam materi OOP (Object Oriented Programming).

    1. Kelas (Class)
      Bagian terpenting dalam pemograman berbasis OOP adalah
      Class. Dimana class merupakan gambaran atau spesifikasi dari
      suatu object. Jika diandaikan, Class dapat disebut sebagai
      cetakan kue, dan hasil cetakan disebut Object.

    2. Objek (Object)
      Bagian terpenting selain Class adalah Object, dimana kelas
      adalah spesifikasi dari object, maka object dapat diartikan
      sebagai perwujudan dari Class. Jika diandaikan, object
      merupakan hasil cetakan dari cetakan Class. Class atau Object
      memiliki 2 elemen penting yaitu Properties dan Method.

    3. Properties (Atribut)
       Properties merupakan karekteristik dari suatu objek. Contoh
       pada objek pesawat dimana karakteristiknya dapat




                                                                18
Object Oriented Programming Java & PHP
____________________________________________________


   disebutkan dari warnanya, tahun pembuatan, tipe, dan sebagainya.
   Sehingga properties dapat dikatakan sebagai kata benda atau lebih ke
   pertanyaan apasaja ?

4. Fungsi (Method)
   Fungsi atau Method merupakan fungsi dari suatu object, atau dapat
   diartikan sebagai tingkah laku suatu object. Contoh pada object
   pesawat adalah bagaimana mengemudikan pesawat, bagaimana
   melendingkan pesawat, dan sebagainya. Sehingga method dapat
   dikatakan sebagai kata kerja atau lebih ke pertanyaan bagaimana.

5. Pewarisan (Inheritance)
   Pewarisan merupakan mekanisme menurunkan atau mewariskan sifat
   yang dimiliki parent (orang tua) kepada child (anaknya). Jika dalam
   pemograman OOP, class parent disebut sebagai superclass,
   sedangkan class child disebut sebagai subclass. Dimana subclass
   dapat menggunakan atau mewarisi method dan varibel yang dimiliki
   oleh superclass, namun subclass tetap bisa membuat atau
   menambahkan method dan varibel sendiri.

6. Interface (Polymorphism)
   Interface pada intinya sebagai share konstanta atau method kepada
   sejumlah class yang menggunakannya. Pemanggilan interface oleh
   Class menggunakan implement, untuk mengimplementasikan
   konstanta atau method yang dibutuhkan. Intinya, interface
   membungkus konstanta atau method, yang nantinya digunakan oleh
   class yang mengimplentasikannya. Interface dapat mewawisi
   interface yang lain, seperti halnya class pewarisan.




                                                                    19
Object Oriented Programming Java & PHP
____________________________________________________


E. Pemograman OOP
  Pada pembahasan sebelumnya, anda mempelajari konsep dasar OOP,
  pada pembahasan ini anda akan memperlajari mengimplementasikan
  OOP dalam pemograman Java dan PHP.

  1. Class
     Pada pembahasan sebelumnya, class merupakan spesifikasi atau
     gambaran dari sebuah object. Sehingga bentuk pendeklarasian
     class pada Java dan PHP sama.
          class [Nama Kelas] {
             .............................
          }
     dimana nama kelas sifatnya bebas anda definisikan, dan nama
     kelas tidak diawali dengan huruf Kapital atau huruf besar.

                       Java                                PHP

             class Mobil {                   class Mobil {
               .........................       ...........................
             }                               }


  2. Object
     Object adalah gambaran dari sebuah Class. Dimana untuk
     membuat sebuah object dari sebuah Class, maka gunakan
     keyword new. Bentuk pendeklarasian
       - Object [variabel reference] = new Object(); (Java)
       - $[variabel reference] = new Object();       (PHP)
     Dimana nama Object harus sama dengan nama suatu Class, dan
     variabel reference berfungsi merujuk atau mengakses elemen dari
     object yaitu properties dan method.



                                                                             20
Object Oriented Programming Java & PHP
____________________________________________________


3.   Properties (Atribut)
     Properties merupakan karakteristik dari sebuah object. Dimana
     properties umumnya memiliki Tipe Data dan variabel. Bentuk
     pendeklarasiannya adalah :
        - Tipe Data [variabel] = Nilai variabel (Java)
        - $[variabel] = Nilai variabel;         (PHP)

                     Java                                PHP

        class Mobil {                          class Mobil {

             // Properties                         // Properties
            String warna = “Merah”;                $warna = “Merah”;
            int tahun      = 2011;                 $tahun = 2011;
        }                                      }


4.   Method (Fungsi)
     Method merupakan fungsi atau tingkah laku dari suatu object.
     Deklarasi Method
        -    public [Tipe Data] [Nama Method] ( ) { (Java)
               return [nilai]
             }
        -    public function [Nama Method] ( ) {    (PHP)
               return $[nilai]
             }

     Perintah return merupakan jenis method mengembalikan nilai, jika
     ingin mendeklarasikan method tanpa mengembalikan nilai, maka
     anda ganti bentuk Tipe Data dengan void jika pada Java dan jika
     pada PHP, anda tinggal hilangkan perintah return




                                                                       21
Object Oriented Programming Java & PHP
____________________________________________________


    -       public void [Nama Method] ( ) {                    (Java)
               ...............................................
            }
    -       public function [Nama Method] ( ) { (PHP)
            ...............................................
            }

                        Java                                            PHP


    class Mobil {                                     class Mobil {

        // Method non return                          // Method non return
        public void setMengemudi ()                   public function setMengemudi ()
        {                                             {
            String isi = “setMenyetir”;                   $isi = “setMenyetir”
            System.out.println (isi);                     echo $isi;
        }                                             }

        // Method return                             // Method return
        public String getMengemudi ()                 public function getMengemudi()
        {                                            {
           String isi = “getMengemudi”;                  $isi = “getMengemudi”;
           System.out.println (isi);                     echo $isii;
           return $isi;                                  return $isi;
        }                                            }



7. Mengakses Properties dan Method
  Pada pembahasan sebelumnya anda telah mempelajari bagaimana
  membuat class, properties, dan method, namun belum ada akses
  terhadap properties dan method. Untuk mengakses properties dan
  method, anda dapat menggunakan variabel reference dari objek yang
  sebelumnya sudah anda pelajari. Untuk mengakses anda dapat
  menggunakan (tanda titik) pada Java dan (tanda panah) pada PHP.




                                                                                        22
Object Oriented Programming Java & PHP
____________________________________________________


     Mobil varMob = new Mobil();                             (Java)
     //varMob mengakses method setMengemudi
     varMob.setMengemudi ( );

     $varMob = new Mobil();                                  (PHP)
     // varMob mengakses method getMengemudi
     $varMobgetMengemudi ( );

Variabel varMob (dibuat dari objek Mobil) mengakses method
setMengemudi didalam Class Mobil , karena Objek Mobil
perwujudan dari Class Mobil. Ingat, “bahwa object yang dibuat dari
kelas tertentu hanya bisa mengakses dalam kelas itu saja”.
Terdapat 2 kelas berbeda yaitu Class Mobil dan Class Orang.

                 Java                                  PHP


 class Mobil {                         class Mobil {
     public void setMobil ( ) {            public function setMobil ( ) {
       System.out.println (“Mobil”);          echo “Mobil”;
     }                                     }
 }                                     }

 class Orang {                         class Orang {
     public void seManusia ( ) {           public function setOrang ( ) {
       System.out.println(“Orang”);            echo “Orang”;
     }                                     }
 }                                     }

Kemudian membuat Objek dari Class Mobil dan Class Orang.


 Mobil varMobil = new Mobil ( );            $varMobil = new Mobil ( );
 OrangvarManusia = new Orang();             $varOrang = new Orang();




                                                                            23
Object Oriented Programming Java & PHP
____________________________________________________


  Setelah membuat Objek dari kedua Class tersebut yaitu Class
  Mobil dan Class Orang, tinggal mengakses method didalam kelas
  masing-masing menggunakan variabel reference.

     varMobil.setMobil();               $varMobilsetMobil();
     varManusia.setManusia();           $varManusiasetManusia();

                                   Output
     Mobil                                     Mobil
     Manusia                                   Manusia


8. Konstruktor dan Overiding
  Java menyediakan metode untuk membuat method dari sebuah class,
  artinya seorang programmer dapat membuat method yang namanya
  sama dengan nama classnya, metode ini disebut konstruktor. Contoh
  penggunaan konstruktor sebagai berikut :
                 Java                             PHP


     class Biodata {                   class Biodata {
      // Method non-return value        // Method non-return value
      public Biodata ( ) {              public function Biodata ( ) {

      }                                 }


  Perhatikan method Biodata memiliki nama yang sama dengan nama
  classnya yaitu Biodata. Namun beberapa point yang perlu di
  perhatikan dalam menggunakan konstruktor adalah:
       Nama method harus sama dengan nama classnya.
       Method konstruktor tidak boleh bertipe void atau return.
       Method konstruktor dapat dibuat lebih dari satu, dengan nama
         class sama, tapi jumlah parameternya harus berbeda



                                                                        24
Object Oriented Programming Java & PHP
____________________________________________________


  Pada point ketiga, terdapat istilah parameter , parameter adalah
  komponen atau atribut yang digunakan untuk menginisialisasi
  sebuah method. Parameter diletakkan didalam tanda kurung sebuah
  method. Perhatikan deklarasi method dan parameter.

   public [nama konstruktor] ( ) {                         (bentuk 1)
      .......................................
   }

   public [nama konstruktor] ( parameter 1) {              (bentuk 2)
      .......................................
   }

   public [nama konstruktor] ( parameter 1, parameter 2) { (bentuk 3)
        .......................................
   }

  Pada deklarasi ketiga bentuk method diatas, tedapat 3 method
  dengan jumlah parameter yang berbeda, pada bentuk pertama tidak
  memiliki parameter (default), pada parameter kedua memiliki
  sebuah parameter yaitu parameter 1, pada bentuk ketiga memiliki 2
  buah parameter yaitu parameter 1 dan parameter 2. Bentuk deklarasi
  diatas dapat dikatakan sebagai “Overiding Konstruktor”, dan
  implementasi programmnya :




                                                                        25
Object Oriented Programming Java & PHP
____________________________________________________


  Setelah membuat Objek dari kedua Class tersebut yaitu Class
  Mobil dan Class Orang, tinggal mengakses method didalam kelas
  masing-masing menggunakan variabel reference.

     varMobil.setMobil();               $varMobilsetMobil();
     varManusia.setManusia();           $varManusiasetManusia();

                                   Output
     Mobil                                     Mobil
     Manusia                                   Manusia


9. Konstruktor dan Overiding
  Java menyediakan metode untuk membuat method dari sebuah class,
  artinya seorang programmer dapat membuat method yang namanya
  sama dengan nama classnya, metode ini disebut konstruktor. Contoh
  penggunaan konstruktor sebagai berikut :
                 Java                             PHP


     class Biodata {                   class Biodata {
      // Method non-return value        // Method non-return value
      public Biodata ( ) {              public function Biodata ( ) {

      }                                 }


  Perhatikan method Biodata memiliki nama yang sama dengan nama
  classnya yaitu Biodata. Namun beberapa point yang perlu di
  perhatikan dalam menggunakan konstruktor adalah:
       Nama method harus sama dengan nama classnya.
       Method konstruktor tidak boleh bertipe void atau return.
       Method konstruktor dapat dibuat lebih dari satu, dengan nama
         class sama, tapi jumlah parameternya harus berbeda



                                                                        26
Object Oriented Programming Java & PHP
____________________________________________________


  Pada point ketiga, terdapat istilah parameter , parameter adalah
  komponen atau atribut yang digunakan untuk menginisialisasi
  sebuah method. Parameter diletakkan didalam tanda kurung sebuah
  method. Perhatikan deklarasi method dan parameter.

   public [nama konstruktor] ( ) {                         (bentuk 1)
      .......................................
   }

   public [nama konstruktor] ( parameter 1) {              (bentuk 2)
      .......................................
   }

   public [nama konstruktor] ( parameter 1, parameter 2) { (bentuk 3)
        .......................................
   }

  Pada deklarasi ketiga bentuk method diatas, tedapat 3 method
  dengan jumlah parameter yang berbeda, pada bentuk pertama tidak
  memiliki parameter (default), pada parameter kedua memiliki
  sebuah parameter yaitu parameter 1, pada bentuk ketiga memiliki 2
  buah parameter yaitu parameter 1 dan parameter 2. Bentuk deklarasi
  diatas dapat dikatakan sebagai “Overiding Konstruktor”, dan
  implementasi programmnya :




                                                                        27
Object Oriented Programming Java & PHP
____________________________________________________


 Bentuk deklarasi Method Overiding hampir sama dengan Konstruktor
 Overiding, perbedaanya pada Method Overiding pemberian nama
 method tidak sama dengan nama kelasnya, dan persamaannya antara
 method satu dengan method lainnya pemberian nama methodnya
 harus sama, namun dengan jumlah parameter berbeda. Contoh
 penggunaan dalam program

                 Java                             PHP
  class Kendaraan {                class Kendaraan {
   // parameter default            // parameter default
   public Pesawat (String nama){   public function Pesawat($nama){

   }                               }
   // parameter Nama & Jenis       // parameter Nama & Jenis
   public Pesawat                  public function Pesawat
   (String nama, String jenis) {     ($nama, $jenis){

   }                               }

 Sebuah method pesawat dengan sebuah parameter “String Nama”
 dioveride dengan nama method yang sama yaitu pesawat dengan 2
 buah parameter yaitu “String Nama” dan “String jenis”. Kemudian
 membuat object dari class Kendaraan dan membuat variabel reference
 untuk mengakses kedua method. Beberapa hal penting untuk
 mengakses method dan memberi nilai parameter method:

    Pada konstruktor, setiap konstruktor diakses oleh variabel
     reference yang berbeda, jika pada non-konstruktor, method
     diakses menggunakan variabel reference sama (selama dalam
     class sama).
    Pemberian nilai parameter pada konstruktor dilakukan ketika
     object dibuat. Jika pada non-konstruktor, nilai parameter di




                                                                     28
Object Oriented Programming Java & PHP
____________________________________________________


   inisialisasi pada method itu sendiri ketika diakses melalui variabel
   reference.
   Contoh program mengakses method pesawat serta inisialisasi nilai
                    Java                                  PHP


      // Object sekali diciptakan            // Object sekali diciptakan
      Kendaraan var = new Biodata( );        $Bio1 = new Kendaraan( );

      // inisialisasi nilai parameter        // inisialisasi nilai parameter
      // langsung dilakukan pada             // langsung dilakukan pada
      // method Pesawat                      // method Pesawat
      var.Pesawat (“Sukoi”);                 $varPesawat (“Garuda”);
      var.Pesawat (“Sukoi”,                  $varPesawat (“Garuda”,
                   “Tempur”);                              “Tempur”);


10. Pewarisan (Inheritance)
   Java menyediakan mekanisme pewarisan, dimana superclass
   (parent) memiliki hak akses terhadap subclass (child), dan begitu
   juga dengan subclass memiliki akses terhadap superclass selama
   superclass tidak disetting modifier private.

   Untuk membuat class pewarisan maka gunakan perintah extends
    // Membuat class parents (superclass)
    class parents {
       ............................
    }

    // class child mewarisi elemen yang dimiliki oleh class parent
    // yang sudah dibuat
    class child extends parents {
        ...........................
    }




                                                                               29
Object Oriented Programming Java & PHP
____________________________________________________


                 Java                             PHP

     class Biodata {                   class Biodata {
      // parameter default              // parameter default
      public Biodata ( ) {              public function Biodata ( ) {
        konstruktor 1                      konstruktor 1
      }                                 }

     // parameter Nama & Umur           // parameter Nama & Umur
      public Biodata (String nama) {    public function Biodata
         konstruktor 2                     ($Nama, $umur) {
                                           konstruktor 2
      }                                 }

 Pada contoh program diatas, bentuk method konstruktor Biodata
 pertama, parameternya default (kosong), sedangkan bentuk method
 Biodata kedua memiliki parameter 2 buah parameter yaitu String
 Nama dan int Umur.

 Setelah membuat konstruktor dari class Biodata, maka tinggal
 membuat Object dari class Biodata dan variabel reference untuk
 mengakses method kontruktor Biodata. Terdapat beberapa point yang
 perlu diperhatikan

      Setiap konstruktor yang dipanggil, harus menciptakan object
       baru yang sama,namun dengan nama variabel reference
       berbeda, artinya nama variabel reference harus berbeda dengan
       variabel reference yang lain

      Pemberian nilai parameter pada konstruktor dilakukan ketika
       Object dibuat. Dimana pemberian nilai parameter, harus sesuai
       dengan jenis dan jumlah parameternya.

      Pada konstruktor yang memiliki parameter default (kosong),
       maka ketika object dibuat nilainya dikosongi.




                                                                        30
Object Oriented Programming Java & PHP
____________________________________________________


 Contoh pembuatan object untuk mengakses setiap konstruktor Biodata.
                      Java                                    PHP


   // Object dengan nilai default                // Object dengan nilai default
   Biodata Bio1 = new Biodata ( );               $Bio1 = new Biodata ( );

   // Object dengan nilai parameter              // Object dengan nilai parameter
   // vanderoid.                                 // vanderoid.
   Biodata Bio2 =                                $Bio2 =
   new Biodata (“Vanderoid”);                    new Biodata (“Vanderoid”);

   // Object dengan nilai parameter              // Object dengan nilai parameter
   // vanderoid dan 24.                          // vanderoid dan 24.
   Biodata Bio3 =                                $Bio3 =
   new Biodata (“Vanderoid”, 24);                new Biodata (“Vanderoid”, 24);


 Teknik Overiding tidak hanya diterapkan pada Konstruktor, namun
 dapat diterapkan pada non-konstruktor atau method biasa, dengan
 syarat bahwa method dengan nama yang sama, namun jumlah
 parameter yang berbeda, metode ini disebut dengan “Overiding
 Method”.Bentuk pendeklarasiannya

    public [nama method] ( ) {                                       (bentuk 1)
       .......................................
    }

    public [nama method] ( parameter 1) {                            (bentuk 2)
       .......................................
    }

    public [nama method] ( parameter 1, parameter 2) {               (bentuk 3)
         .......................................
    }




                                                                                    31
Object Oriented Programming Java & PHP
____________________________________________________


      interface [Nama Interface A] {
        (implementasi A)
      }

      interface [Nama Interface B] extends [Nama Interface B]{
         (implementasi B)
      }
      // class A mengimplementasi interface B , juga memiliki akses A
      class [Nama Class A] implements [Nama Interface B] {
         (implementasi A)
         (implementasi B)
      }

 Penerapan pewarisan (inheritance) pada interface, dimana class yang
 mengimplementasikan interface, cukup mengakses class childnya.

                  Java                                   PHP

  interface MamaliaA {                    interface MamaliaA {
    // Method diahkiri semicolon          // Method diahkiri semicolon
    public void setMamaliaA( );           public function setMamaliaA();
  }                                       }

  interface MamaliaB extends              interface MamaliaB extends
  MamaliaA {                              MamaliaA{
      // Method diahkiri semicolon        // Method diahkiri semicolo public
       public void setMamaliaB( );        function setMamaliaB();
  }                                       }

  class Binatang implements               class Binatang implements
  MamaliaB {                              MamaliaB
     public void setMamaliaA ( ) {         public function setMamaliaA(){
       System.out.println (“Anjing”);        echo ("Anjing");
     }                                     }
     public void setMamaliaB ( ) {        public function setMamaliaB () {
       System.out.println(“Kucing”);         echo ("Kucing");
  }}                                       }}




                                                                               32
Object Oriented Programming Java & PHP
____________________________________________________


F. ARRAY
  Pada pembahasan sebelumnya, anda telah mempelajari tentang tipe
  data primitif, mengapa saya katakan primitif ? “, karena
  penggunaannya masih sangat sederhana, dimana sebuah tipe data,
  hanya memiliki sebuah variabel untuk menampung sebuah nilai.
  Masalahnya, bagaimana jika kita ingin membuat sekumpulan varibel
  yang sangat banyak dengan tipe data tertentu yang sama ? Maka dari
  inilah java menyediakan mekanisme untuk mengelompokan atau
  membungkus sekumpulan variabel (meskipun jumlah variabelnya
  banyak) menjadi satu, kedalam tipe data yang sama.

  1. Dasar Array
     Array merupakan kumpulan variabel yang dibungkus kedalam
     sebuah tipe data yang sama, artinya satu tipe data memiliki satu
     atau banyak variabel. Array menggunakan tanda “[ ]”;
     Jika di ilustrasikan, array di andaiakan sebuah keranjang buah
     dimana keranjang tersebut dapat diisi berbagai jenis buah-buahan
     (tergantung isi kapasitas/ukuran keranjangnya). Keranjang dapat
     dikatakan sebagai Tipe data array, dan variabel dapat dikatakan
     buah-buahan. Tipe data array dapat diatur kapasitas atau
     ukurannya (seperti halnya keranjang) untuk menampung
     banyaknya variabel yang mampu di tampung.
     Untuk mengatur ukuran atau kapasitas array, bentuk deklarasinya

       (Tipe Data Array) ( nama array) = new (Tipe Data Array) [ ukuran ];

       Tipe Data Array : Mendefiniskan tipe data (String, Integer,
                         Character, Double, Float).
       Nama Array      : Mendefinsikan nama Array.
       New             : Membuat Object Array
       Ukuran          : Menentukan ukuran array (berupa angka).


                                                                        33
Object Oriented Programming Java & PHP
____________________________________________________


 Untuk mengakses variabel array dan memberikan nilai setiap variabel,
 maka dapat dideklarasikan sebagai berikut :
   ( Nama Array ) [ index-1] = ( Nilai varibel );

   Index n-1               Index menyatakan posisi variabel berdasarkan
                           penomeran atau letak sebuah variabel,
                           Penomeran index dimulai dari 0 hingga index-1.
   Nilai Variabel          Nilai variabel diberikan pada setiap variabel.

 Contoh jika terdapat sebuah Tipe data “String” dengan Nama variabel
 Array “varArr”, dan kapasitas atau ukuran Array diset 5. Maka :
   (Pemogramman Java)
   String varArr = new String [5]; // membuat object array, kapasitas 5

 Dimana Array maksimal mampu menampung 5 variabel, jika diisi
 lebih dari 5 variabel, maka terjadi overflow (kelebihan kapasitas).
 Kemudian mengakses variabel array dan memberikan nilai variabel.
  varArr[0] = “Nilai A”;        //    variabel pertama pada index ke-0
  varArr[1] = “Nilai B”;        //    variabel kedua pada index ke-1
  varArr[2] = “Nilai C”;        //    variabel ketiga pada index ke-2
  varArr[3] = “Nilai D”;        //    variabel keempat pada index ke-3
  varArr[4] = “Nilai E”;         //   variabel kelima pada index ke-4

 Jika di ilustrasikan program pada gambar berikut ini :

 a ) Menyiapkan Array dengan ukuran 5 (menyiapkan sebanyak 5 slot)

      Slot 0      Slot 1     Slot 2       Slot 3    Slot 4


 b) Kemudian mengisi setiap slot dengan setiap variabel “varArr[0]”
    hingga “varArr[4]”. Maka ilustrasinya menjadi :

      varArr[0]      varArr[1]          varArr[2]      varArr[3]     varArr[4]



                                                                                 34
Object Oriented Programming Java & PHP
____________________________________________________



 Jika sebelumnya anda mendeklarasikan array dan menginisialisasi
 nilainya pada setiap variabel “varArr” seperti ini :
    varArr[0] = “Nilai A”;                // variabel pertama pada index ke-0
    ...................................
    varArr[4] = “Nilai E”;                // variabel kelima pada index ke-4

 Terdapat alternatif lain, yaitu setelah mendeklarasikan array langsung
 menginisialisasi nilainya dalam tanda kurawal “{}” jika menggunakan
 Java, dan jika PHP inisialisasi nilai dalam tanda ( )
      String varArr [ ] = { “Nilai A”, “Nilai B”, “Nilai C”,
                            “Nilai D”, “NilaiE”};                               (Java)

     $varArr            = array (“Nilai A”, “Nilai B”, “Nilai C”,
                                “Nilai D”, “NilaiE”);                           (PHP)

 Jika anda perhatikan, setelah mendeklarasikan array, maka dapat
 langsung menginisialisasi nilainya. Untuk mengakses nilainya, kita
 bisa mengiterasi indexnya, dan menghitung panjang elemen array.

                       Proses                                     Algoritma

   Menginisialisasi nilai awal                       i = 0 // asumsikan n nilainya 0
   Hitung panjang array dan                          i < varArr.count ( )      // Java
    kondisikan dengan i = n.                           i < $varArrlength ( ) // PHP
   Increment selama kondisi true                     i++
   Memetakan array setiap index                      varArr [ i ];
    selama kondisi true.

 Untuk menghitung panjang array, java menyediakan perintah
 length(), dan jika pada PHP menyediakan perintah count ( ).

    for ( int i=0; i <= varArr.length(); i++)                                  (Java)
    for ( $i=0; $i <= count($varArr); $i++)                                    (PHP)


                                                                                           35
Object Oriented Programming Java & PHP
____________________________________________________



 Panjang array diartikan sebagai jumlah index, dimana pada varArr
 memiliki jumlah index 5 (jika dihitung dari 0). Jika di ilustrasikan :

   varArr[0]       varArr[1]        varArr[2]         varArr[3]       varArr[4]
  Index ke-1       Index ke-2       Index ke-3        Index ke-4      Index ke-5

 Setelah panjang array diketahui sepanjang 5, maka tinggal mengiterasi
 varArr selama kondisinya bernilai true, untuk menngakses nilainya,
 gunakan perintah varArr [ i ], perhatikan prosesnya dibawah ini :

        Kondisi              True / False ?        varArr [ i ].        Nilai
  i < 0 ? atau i = 0 ?          True (i=0)          varArr[ 0 ]         Nilai A
  i < 1 ? atau i = 1 ?          True (i<1)          varArr[ 1 ]         Nilai B
  i < 2 ? atau i = 2 ?          True (i<2)          varArr[ 2 ]         Nilai C
  i < 3 ? atau i = 3 ?          True (i<3)          varArr[ 3 ]         Nilai D
  i < 4 ? atau i = 4 ?          True (i<4)          varArr[ 4 ]         Nilai E

 Dimana inisialisasi nilai awal adalah 0 (i = 0), kemudian cek kondisi,
 apakah 0 < 0 ? atau 0 = 0 ? ternyata salah satu kondisi yaitu 0 = 0
 memenuhi dan nilainya true, maka masukkan nilai i=0 kedalam tanda
 [ ] pda varArr [0], dan set nilainya untuk varArr [0] = “Nilai A”,
 lanjutkan proses yang sama hingga varArr [4].

                  Java                                       PHP

  int [ ] nilai = {70,80,90,100};            $nilai [ ] = array (70,80,90,100);

  for(int i=0; i<nilai.lengh(); i++) {       for($i=0;$i<count($varArr);$i++){
     System.out.println (nilai[i]);             echo ($nilai[$i]);
  }                                          }

                               Output : 70,80,90,100




                                                                                   36
Object Oriented Programming Java & PHP
____________________________________________________


 UMPAN BALIK

   1. Dapatkan posisi index pada array ditentukan sendiri posisinya ?
      Jawab : bisa, metode ini dinamakan array assosiatif. Secara
      default, pemetaan index array dimulai berurutan dari kiri ke
      kanan, atau posisi index ke-0, 1, 2...., n-1, jika menggunakan
      array assosiatif, pemetaan index array dapat di tentukan sendiri.

     Bentuk deklarasi untuk array assosiatif adalah :
        [nama array] = array ( [index_assoc] => Nilai)

        Index_assoc : Posisi index opsional (ditentukan user), tanda
                      ( => ), digunakan untuk memetakan nilai
                      sesuai dengan posisi indexnya.
     Contoh penggunaan array assosiatif pada PHP sebagai berikut :

     Diketahui array dengan nilai default (sebelum array assosiatif)
          $varArr = array (“Malang”, ”Bandung”, “Jakarta”, “Surabaya” )

     Kemudian dilakukan proses array assosiatif sebagai berikut :
          $varArr = array
               ( 3 => “Malang”,          // Malang berada pada index ke-3
                 0 => “Bandung”,         // Bandung berada pada index ke-0
                 2 =>” Jakarta”,         // Jakarta berada pada index ke-2
                 1 => ”Surabaya”         // Bandung berada pada index ke-1
               );

     Outputnya sebelum dan sesudah dilakukan array assosiatif :
          Malang Bandung Jakarta Surabaya                (sebelum)
          Bandung Surabaya Jakarta Malang                (sesudah)




                                                                          37
Object Oriented Programming Java & PHP
____________________________________________________


G. Exception Handling
  Metode yang disediakan oleh java untuk menangani kesalahan adalah
  Exception Handling. Dengan menggunakan metode ini, kita dapat
  mendefiniskan sendiri pesan kesalahan sesuai dengan style kita. Hal
  ini memudahkan dalam memahami pesan kesalahan pada program.

  Contohnya kesalahan ketika melakukan pembagian dengan bilangan
  nol, secara default java akan menampilkan pesan kesalahan yaitu :
     “java.lang.ArithmeticException: / by zero”
  Jika kita menggunakan Exception Handling, maka pesan kesalahan
  dapat kita tampilkan dengan style kita, misalnya seperti ini pesan:
     “Error, pembagian dengan nilai nol tidak diizinkan”

  Exception Handling memiliki 2 elemen khusus dalam penanganan
  kesalahan, yaitu try dan catch. try berfungsi menampung program
  yang akan dicek kemungkinan jika terjadi eksepsi, sedangkan catch
  akan menangkap kesalahan jika memang program terjadi kesalahan
  atau eksepsi. Pendeklarasian try-catch :
     try {
         (Cek Kemungkinan Program)        // Cek kemungkinan program
     }
     catch ( Tipe Eksepsi ){              // Tipe Eksepsi
         (pesan kesalahan)
     }

  Pada pemograman Java, terdapat tipe eksepsi yang khusus untuk
  menangani kesalahan. Seperti tipe eksepsi “ArrayIndexOutOfBounds
  Exception” untuk menangani eksepsi pada Array. Kemudian tipe
  “ArithmeticException” untuk menangani eksepsi pada aritmatika.



                                                                  38
Object Oriented Programming Java & PHP
____________________________________________________


 Namun kita dapat menggunakan tipe eksepsi secara umum, yang
 hampir bisa digunakan untuk menangani semua kesalahan, yaitu
 “Exception”, tipe eksepsi ini berlaku pada Java dan PHP.

 Contoh program eksepsi Aritmatika pembagian nilai nol :

                    Java                                    PHP

  class Hitung {                           class Hitung {

      void setNilai (int op1, int op2) {   function setNilai ($op1, $op2) {
         try {                                 try {
             int hasil = op1 / op2;                $hasil = $op1/$op2;
         }                                     }
         catch (Exception e) {                 catch (Exception $e){
             System.out.println                        echo "ERROR" .$e;
             ("pembagian error");              }
                                           }
         }
  }

 Method setNilai dengan 2 parameter sebagai operand yaitu op1 dan
 op2. Kemudian membuat objek dari kelas Hitung

                    Java                                    PHP

      Hitung varDiv = new Hitung ( );          $varDiv = new Hitung ( );
      $varDiv.setNilai (8,0);                  $varDiv setNilai (8,0);

                                      Output
              Pembagian Error                  Warning: Division by zero

 Ketika method setNilai dipanggil dan diberikan nilai parameter 8 dan
 0, maka pesan kesalahan ditampilkan, karena adanya pembagian nol.




                                                                              39
Object Oriented Programming Java & PHP
____________________________________________________


 CATATAN PENULIS

  Alhamdulliah penulisan buku yang berjudul Java & PHP berbasis
  OOP telah terselesaikan. Diharapkan setelah anda mempelajari buku
  yang masih sederhana ini, anda memiliki bekal pengetahuan tentang
  2 bahasa pemograman sekaligus yaitu Java dan PHP yang berbasis
  Object Oriented Programming yang banyak digunakan untuk
  pengembangan Aplikasi. Dan dengan buku ini, menjadi bekal bagi
  anda untuk membuat aplikasi yang lebih powerfull.

  Saya Novan Surya Ardani adalah penulis buku ini dan buku ini
  sengaja saya bagikan kepada anda secara cuma-cuma atau gratis dan
  semata-mata hanya tujuan untuk amal dan ibadah. Semoga buku ini
  bermanfaat bagi anda.Amin. Dan jika anda memiliki saran, kritik,
  serta pertanyaan dapat anda kirimkan ke :

     Email     : liv3d_rocks@yahoo.com
     Website   : vanderocks.wordpress.com
     Facebook : www.facebook.com/profile.php? id=100000073924967


  Assalamualaikum Wr.Wb




                                                                 40

Weitere ähnliche Inhalte

Was ist angesagt?

Laporan praktikum modul 4 (pemrograman applet)
Laporan praktikum modul 4 (pemrograman applet)Laporan praktikum modul 4 (pemrograman applet)
Laporan praktikum modul 4 (pemrograman applet)Devi Apriansyah
 
Struktur Pemrograman Java
Struktur Pemrograman JavaStruktur Pemrograman Java
Struktur Pemrograman Javaroji muhidin
 
Tugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekTugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekPungkas Soebarkah
 
Mi 04.-praktikum-pemrograman-berorientasi-objek
Mi 04.-praktikum-pemrograman-berorientasi-objekMi 04.-praktikum-pemrograman-berorientasi-objek
Mi 04.-praktikum-pemrograman-berorientasi-objekAyu Karisma Alfiana
 
Java (Netbeans) - Exception handling - Object Oriented Programming
Java (Netbeans) - Exception handling - Object Oriented ProgrammingJava (Netbeans) - Exception handling - Object Oriented Programming
Java (Netbeans) - Exception handling - Object Oriented ProgrammingMelina Krisnawati
 
150 Rahasia Pemrograman Java
150 Rahasia Pemrograman Java150 Rahasia Pemrograman Java
150 Rahasia Pemrograman JavaNurdin Al-Azies
 
01. prak.-bahasa-pemrograman-new
01. prak.-bahasa-pemrograman-new01. prak.-bahasa-pemrograman-new
01. prak.-bahasa-pemrograman-newBoy Cuii
 
15. konsep java class library (jcl)
15. konsep java class library (jcl)15. konsep java class library (jcl)
15. konsep java class library (jcl)Saprudin Eskom
 
Jeni Intro1 Bab04 Dasar Dasar Pemrograman
Jeni Intro1 Bab04 Dasar Dasar PemrogramanJeni Intro1 Bab04 Dasar Dasar Pemrograman
Jeni Intro1 Bab04 Dasar Dasar PemrogramanIndividual Consultants
 
OOP Dalam Pemrograman Java
OOP Dalam Pemrograman JavaOOP Dalam Pemrograman Java
OOP Dalam Pemrograman JavaAnjar Ridwan
 

Was ist angesagt? (17)

Laporan i
Laporan iLaporan i
Laporan i
 
Laporan praktikum modul 4 (pemrograman applet)
Laporan praktikum modul 4 (pemrograman applet)Laporan praktikum modul 4 (pemrograman applet)
Laporan praktikum modul 4 (pemrograman applet)
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Struktur Pemrograman Java
Struktur Pemrograman JavaStruktur Pemrograman Java
Struktur Pemrograman Java
 
Tugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekTugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi Objek
 
Mi 04.-praktikum-pemrograman-berorientasi-objek
Mi 04.-praktikum-pemrograman-berorientasi-objekMi 04.-praktikum-pemrograman-berorientasi-objek
Mi 04.-praktikum-pemrograman-berorientasi-objek
 
Modul 1 pbo
Modul 1 pboModul 1 pbo
Modul 1 pbo
 
Java (Netbeans) - Exception handling - Object Oriented Programming
Java (Netbeans) - Exception handling - Object Oriented ProgrammingJava (Netbeans) - Exception handling - Object Oriented Programming
Java (Netbeans) - Exception handling - Object Oriented Programming
 
150 Rahasia Pemrograman Java
150 Rahasia Pemrograman Java150 Rahasia Pemrograman Java
150 Rahasia Pemrograman Java
 
01. prak.-bahasa-pemrograman-new
01. prak.-bahasa-pemrograman-new01. prak.-bahasa-pemrograman-new
01. prak.-bahasa-pemrograman-new
 
Django Mini Tutorial
Django Mini TutorialDjango Mini Tutorial
Django Mini Tutorial
 
15. konsep java class library (jcl)
15. konsep java class library (jcl)15. konsep java class library (jcl)
15. konsep java class library (jcl)
 
16. error handling
16. error handling16. error handling
16. error handling
 
Jeni Intro1 Bab04 Dasar Dasar Pemrograman
Jeni Intro1 Bab04 Dasar Dasar PemrogramanJeni Intro1 Bab04 Dasar Dasar Pemrograman
Jeni Intro1 Bab04 Dasar Dasar Pemrograman
 
OOP Dalam Pemrograman Java
OOP Dalam Pemrograman JavaOOP Dalam Pemrograman Java
OOP Dalam Pemrograman Java
 
Makalah java
Makalah javaMakalah java
Makalah java
 

Ähnlich wie Pemograman java php_berbasis_oop

Tugas 4 debbie mistikaweni 1412510982
Tugas 4 debbie mistikaweni   1412510982Tugas 4 debbie mistikaweni   1412510982
Tugas 4 debbie mistikaweni 1412510982debbie95
 
dokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
dokumen.tips_34-modul1-pengenalan-java-netbeans.pptdokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
dokumen.tips_34-modul1-pengenalan-java-netbeans.pptahmadmaulana746047
 
2. Fungsi, Prosedur, dan Method.pptx
2. Fungsi, Prosedur, dan Method.pptx2. Fungsi, Prosedur, dan Method.pptx
2. Fungsi, Prosedur, dan Method.pptxYudhiChristian2
 
2. Fungsi, Prosedur, dan Method.pptx
2. Fungsi, Prosedur, dan Method.pptx2. Fungsi, Prosedur, dan Method.pptx
2. Fungsi, Prosedur, dan Method.pptxYudhiChristian2
 
Pengenalan_Materi-Paradigman_PBO-fix.pptx
Pengenalan_Materi-Paradigman_PBO-fix.pptxPengenalan_Materi-Paradigman_PBO-fix.pptx
Pengenalan_Materi-Paradigman_PBO-fix.pptxngajiyanto .
 
150 rahasia pemrograman java
150 rahasia pemrograman java150 rahasia pemrograman java
150 rahasia pemrograman javaJemy Sidauruk
 
Resume aplinet oop mvc
Resume aplinet oop mvcResume aplinet oop mvc
Resume aplinet oop mvcSam_Azzam
 
Modul Pert 2 Praktek
Modul Pert 2 PraktekModul Pert 2 Praktek
Modul Pert 2 PraktekRUDISELAMAT2
 
Tugas 4 rekayasa web 0316
Tugas 4 rekayasa web 0316Tugas 4 rekayasa web 0316
Tugas 4 rekayasa web 0316art david
 
Rekayasa web tugas 4
Rekayasa web  tugas 4Rekayasa web  tugas 4
Rekayasa web tugas 4yuyun kuratu
 

Ähnlich wie Pemograman java php_berbasis_oop (20)

Tugas 4 debbie mistikaweni 1412510982
Tugas 4 debbie mistikaweni   1412510982Tugas 4 debbie mistikaweni   1412510982
Tugas 4 debbie mistikaweni 1412510982
 
Prak 1
Prak 1Prak 1
Prak 1
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Tugas rekweb 4
Tugas rekweb 4Tugas rekweb 4
Tugas rekweb 4
 
dokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
dokumen.tips_34-modul1-pengenalan-java-netbeans.pptdokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
dokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
 
2. Fungsi, Prosedur, dan Method.pptx
2. Fungsi, Prosedur, dan Method.pptx2. Fungsi, Prosedur, dan Method.pptx
2. Fungsi, Prosedur, dan Method.pptx
 
2. Fungsi, Prosedur, dan Method.pptx
2. Fungsi, Prosedur, dan Method.pptx2. Fungsi, Prosedur, dan Method.pptx
2. Fungsi, Prosedur, dan Method.pptx
 
Pengenalan_Materi-Paradigman_PBO-fix.pptx
Pengenalan_Materi-Paradigman_PBO-fix.pptxPengenalan_Materi-Paradigman_PBO-fix.pptx
Pengenalan_Materi-Paradigman_PBO-fix.pptx
 
1-2 Pengenalan Java.pptx
1-2 Pengenalan Java.pptx1-2 Pengenalan Java.pptx
1-2 Pengenalan Java.pptx
 
Os java
Os javaOs java
Os java
 
Materi Java.pptx
Materi Java.pptxMateri Java.pptx
Materi Java.pptx
 
150 rahasia pemrograman java
150 rahasia pemrograman java150 rahasia pemrograman java
150 rahasia pemrograman java
 
Modul pbo baru
Modul pbo baruModul pbo baru
Modul pbo baru
 
Resume aplinet oop mvc
Resume aplinet oop mvcResume aplinet oop mvc
Resume aplinet oop mvc
 
Java netbeans
Java netbeansJava netbeans
Java netbeans
 
Modul Pert 2 Praktek
Modul Pert 2 PraktekModul Pert 2 Praktek
Modul Pert 2 Praktek
 
Tugas 4 rekayasa web 0316
Tugas 4 rekayasa web 0316Tugas 4 rekayasa web 0316
Tugas 4 rekayasa web 0316
 
Kk 14
Kk 14Kk 14
Kk 14
 
Rekayasa web tugas 4
Rekayasa web  tugas 4Rekayasa web  tugas 4
Rekayasa web tugas 4
 

Pemograman java php_berbasis_oop

  • 1. Novan Surya Ardani PEMOGRAMAN BERORIENTASI OBJECT VANDEROID JAVA & PHP first book release on 2012
  • 2. Pemograman Berorientasi Object JAVA & PHP NOVAN SURYA ARDANI Release on april 2012 www.vanderocks.wordpress.com i
  • 3. Pemograman Berorientasi Object JAVA & PHP Dilarang mengubah, menterjemahkan, dan menjual buku ini tanpa seiijin penulis. Buku ini dibagikan secara Cuma- cuma atau gratis bagi anda, sehingga anda hanya dapat memperbanyak dan menyebarkan saja. Terima Kasih. ii
  • 4. Kata Pengantar Beberapa bahasa pemograman saat ini banyak yang condong pada metode OOP (Object Oriented Programming), Metode OOP sangatlah powefull, karena metode ini memnberikan keuntungan berupa fleksibilitas yang tinggi dalam mengembangkan perangkat lunak, baik dalam skalabilitas yang besar, selain itu adalah kemudahan dan kecepatan dalam maintance atau memelihara aplikasi. Bahasa pemograman yang penulis gunakan adalah bahasa pemograman Java dan PHP menggunakan pendekatan OOP Buku ini ditujukan bagi siapa saja yang ingin mempelajari bahasa pemograman Java dan PHP berbasis OOP . Anda akan dituntun untuk memahami struktur kontrol, OOP, Array, dan Exception Handling, dan bagaimana mengimplementasikannya kedalam program. Ahkir kata, penulis menyadari dalam buku ini tentu masih terdapat kekurangan, anda dapat mengirimkan saran, kritik, dan pertanyaan yang membangun pada website penulis, www.liv3d_rocks.@yahoo.com. Malang, April 2012 Novan Surya Ardani iii
  • 5. Object Oriented Programming Java & PHP ____________________________________________________ A. PENGENALAN BAHASA PEMOGRAMAN 1. PHP PHP merupakan bahasa pemograman yang berjalan di sisi server (server side), sehingga kode program PHP diproses disisi server dan output dari program PHP ditampilkan pada sisi client (client side). Contoh Server Side seperti Apache dan contoh Client Side adalah web browser (mozilla, opera, safari, IE, dan sebagainya). Ketika menulis program menggunakan PHP, kode program diletakkan diatara tag pembuka dan diahkiri dengan tag penutup Hal ini bertujuan untuk memastikan bahwa program yang berada diantara tag tersebut adalah program PHP, bukan program lain. <?php # tag pembuka PHP {kode program php} ?> # tag penutup PHP Contoh program sederhana menampilkan output “Belajar PHP” <?php echo “Belajar PHP”; ?> Pada baris echo “Belajar PHP”, echo merupakan kode program untuk mencetak output Belajar PHP. Coba anda hilangkan tag <?php ?>, yang terjadi adalah echo “Belajar PHP” akan ditampilkan semua, hal ini karena server PHP tidak dapat memproses kode tanpa diawali tag pembuka PHP dan tag penutup PHP. 1
  • 6. Object Oriented Programming Java & PHP ____________________________________________________ 2. JAVA Java merupakan bahasa pemogramman berorientasi object murni yang dikembangkan oleh sun microsystem Jika sebelumnya anda pernah mempelajari bahasa pemograman C, maka tidak jauh berbeda dengan bahasa pemograman Java. Karena Java merupakan bahasa pemograman berorientasi object, maka data dan fungsi dikelompokkan kedalam kelas (class) atau objek. Data dan fungsi bisa berupa perintah atau kode program java. class KelasJava { {data dan fungsi} } Salah satu data dan fungsi yang terpenting dan selalu dgunakan adalah fungsi main. Kode program yang diletakkan di dalam fungsi main, maka akan diekseskusi (dijalankan) pertama kali. class KelasJava { public static void main (String[] args) { {kode program java yang di ekseskusi pertama kali} } } Contoh program sederhana menampilkan output “Belajar JAVA” class KelasJava { public static void main (String[] args ) { System.out.println (“Belajar JAVA”); } } 2
  • 7. Object Oriented Programming Java & PHP ____________________________________________________ Pada baris System.out.println (“Belajar Java”), System.out.println merupakan kode program untuk mencetak output Belajar Java di layar. Dimana kode ini pertama kali diekseskusi karena diletakkan diantara kurung kurawal { } pada fungsi main ( ) . Bagaimana mengekseskusi program yang berada di dalam sebuah kelas tertentu ? contohnya ketika ingin menampilkan output Belajar Java, tanpa meletakkan kode program secara langsung pada fungsi main ( ), tapi diletakkan didalam kelas KelasJava. class KelasJava { System.out.println (“Belajar Java”); public static void main (String[] args) { } } Untuk mengeksekusi baris kode “System.out.println (“Belajar Java”), pertama kali membuat fungsi atau method untuk membungkus kode tersebut. class KelasJava { public void FungsiCetak ( ) { System.out.println (“Belajar Java”); } public static void main (String[] args) { } } 3
  • 8. Object Oriented Programming Java & PHP ____________________________________________________ Pada baris kode “public void FungsiCetak ( )” merupakan method yang telah kita buat bernama FungsiCetak ( ) untuk membungkus kode program “System.out.println (“Belajar Java”). Untuk mengekseskusinya, cukup memanggil fungsi FungsiCetak ( ), kedalam mehod main ( ). Namun untuk memanggilnya, kita harus membuat objek dari class KelasJava terlebih dahulu menggunakan perintah new, objek yang dibuat diletakkan kedalam fungsi main ( ). class KelasJava { public void FungsiCetak ( ) { System.out.println (“Belajar Java”); } public static void main (String[] args) { KelasJava var = new KelasJava ( ); var. FungsiCetak ( ); } } Pada baris program : KelasJava var = new KelasJava ( ); Digunakan untuk membuat objek baru dari kelas KelasJava menggunakan keyword new. var merupakan variabel reference yang berfungsi untuk mereferensi atau merujuk (memanggil) method FungsiCetak ( ). var. FungsiCetak ( ); var sebagai variabel reference yang diciptakan oleh objek KelasJava merujuk ke method FungsiCetak ( ) menggunakan tanda titik. 4
  • 9. Object Oriented Programming Java & PHP ____________________________________________________ 3. Catatan Penting Penulis  Agar program PHP dapat diproses, harus diletakkan di dalam tag pembuka ( <?php ) dan tag penutup ( ?> ).  Program yang diletakkan pada fungsi main, akan dieksekusi terlebih dahulu.  Kode program yang di diletakkan di dalam sebuah kelas, harus di bungkus kedalam sebuah fungsi atau method, kecuali atribut yang di definiskan sendiri.  Untuk mengakses fungsi atau method, maka harus membuat objek dari suatu kelas beserta variabel reference untuk merujuk dan mengakses suatu fungsi atau method.  Umumnya, objek diletakkan pada method main, agar dapat mengeksekusi fungsi-fungsi yang terdapat pada suatu kelas.  Setelah anda mempelajari bagian pengenalan bahasa pemograman, maka pada bagian berikutnya yaitu struktur control, OOP, Array, dan Exception Handling, penulis tidak menyertakan fungsi main pada Java dan penulis tidak menyertakan tag PHP, tujuannya agar penulisan program lebih sederhana dan tidak terlalu panjang berbelit-belit.  Tool yang digunakan untuk menulis program adalah IDE Netbeans 5
  • 10. Object Oriented Programming Java & PHP ____________________________________________________ A. TOOL IDE NETBEANS IDE Netbeans atau Integrate Development Kit Netbeans merupakan aplikasi open source, untuk membuat atau mengembangkan aplikasi baik dalam skala yang kecil maupun besar. Dengan IDE Netbeans kita bisa menuliskan program, mengcompile program, dan menganalisa proses error sebuah program. Dalam perkembangannya IDE Netbeans sudah terintegrasi beberapa bahasa pemograman seperti Java, PHP, C++, Ruby, dan sebagainya. 1. Membuat Aplikasi Pertama Untuk membuat aplikasi menggunakan IDE Netbeans, maka anda harus membuat projectnya dulu.  Buka IDE Netbeans anda kemudian pilih menu File  New Project. Maka akan muncul tampilan berikut.  Kemudian anda pilih salah satu kategories bahasa pemograman yang anda gunakan, contohnya Java, lalu anda perluas lagi dikotak sebelah kanan pilih Java Application. Kemudian pilih Next. 6
  • 11. Object Oriented Programming Java & PHP ____________________________________________________  Kemudian setting Nama Project (Project Name), lokasi project (Project Location), dan lokasi Folder akar project (Project Folder) anda berada, dan hilangkan tanda centang pada Create Main Class Kemudian klik finish. Maka project sudah terbentuk  Jika proses pembuatan project berhasil maka project BelajarJava akan ditampilkan sebagai berikut ini.  Kemudian tinggal menambahkan file-file yang dibutuhkan kedalam project anda. Untuk menambahkan file class, click kanan pada Source Packages , pilih New  Java Main Class 7
  • 12. Object Oriented Programming Java & PHP ____________________________________________________ Tampilan untuk mendefiniskan kelas baru, pada Class Name isikan nama kelas, contohnya KelasPertamaku, kemudian klik finish.  Jika proses pembuatan kelas berhasil, maka halaman editor program dari class KelasPertamaku akan ditampilkan sebagai berikut.  Selanjutnya, Happy coding ....  Untuk penempatan lokasi file pada PHP agak sedikit berbeda, dimana folder akar harus anda tempatkan pada AppServ  www  Kemudian untuk mengeksekusi atau mengcompile program anda, cukup tekan pada keyboard anda SHIFT + F6. 8
  • 13. Object Oriented Programming Java & PHP ____________________________________________________ B. PEMOGRAMAN DASAR 1. Menampilkan Output Program Dalam bahasa pemograman apapun, pasti membutuhkan output untuk menampilkan hasil di layar dari program yang dibuat. Sehingga programmer dapat memantau kesalahan kode programnya atau kesalahan logika programnya. Java PHP System.out.print echo “Welcome PHP”; (“Welcome Java”); print “Welcome PHP”; System.out.println (“Welcome Java” ); Output : Welcome PHP Pada pemograman java, terdapat perbedaan antara fungsi print dan println, perbedaanya jika fungsi println setelah mencetak Welcome Java, maka kursor berpindah ke baris baru, jika fungsi print maka cursor tidak berubah. Untuk menguji hasilnya, anda dapat mencetak Welcome Java masing-masing sebanyak 2 kali menggunakan fungsi print dan fungsi println. Maka hasil yang didapatkan sebagai berikut : Print ( ) Println ( ) Welcome JavaWelcome Java Welcome Java Welcome Java 9
  • 14. Object Oriented Programming Java & PHP ____________________________________________________ 2. Tipe Data Tipe data digunakan untuk menentukan jenis penyimpanan nilai variabel. Nilai variabel dapat berupa angka, huruf, karakter. Agar nilai variabel dapat dikenali oleh sistem, maka tipe data harus disesuaikan. Jika nilai variabelnya huruf, maka tipe datanya String, jika nilai variabelnya angka, maka tipe datanya Integer, Double, Float, Long, jika nilai variabelnya karakter, maka tipe datanya Char. Bentuk deklarasinya sebagai berikut : - [Tipe Data] [Variabel] = [Nilai Variabel]; (Java) - $[Variabel] = [Nilai Variabel]; (PHP) Java PHP String huruf = “vanderoid”; $huruf = “vanderoid”; int angka = 12345; $angka = 12345; double desimal = 1.12 $desimal = 1.12 char karakter = „A‟; $karakter = ‟A‟; Perhatikan perbedaan penggunaan Tipe data kedua bahasa pemograman diatas, pendeklarasian tipe data pada Java lebih jelas dibandingkan dengan PHP. Java menyertakan jenis Tipe datanya, sedangkan PHP tidak, penggantinya mengunakan simbol $(dolar). Pertanyaannya, “Bagaimana sistem mengenali tipe data pada PHP ? “, Jawabannya adalah dari nilai variabelnya. Java PHP String nama = “Vanderoid”; $nama = “Vanderoid”; // tanpa quote // tanpa quote System.out.println (nama); echo ($nama); 10
  • 15. Object Oriented Programming Java & PHP ____________________________________________________ UMPAN BALIK 1. Bagaimana mencetak nilai1, nilai2, nilai3 hanya menggunakan sebuah fungsi cetak saja ? Jawab : tambahkan tanda (+) sehingga programnya menjadi System.out.println ( “Nilai 1” + “Nilai 2” + “Nilai 3”); Sama dengan anda menuliskan program sebagai berikut System.out.println ( “Nilai 1”); System.out.println ( “Nilai 2”); System.out.println ( “Nilai 3”); Jika pada program PHP anda tambahkan simbol titik (.) echo “Nilai 1” .” Nilai 2 . “Nilai 3”; Sama dengan anda menuliskan program sebagai berikut : echo ( “Nilai 1”); echo ( “Nilai 2”); echo ( “Nilai 3”); 2. Apakah ada cara lain untuk pertanyaan nomer satu ? Jawab : Ada, membuat variabel dan memanggilnya. String varNilai2 = “Nilai2”; String varNilai3 = “Nilai3”; // varNilai2 dan varNilai3 jangan memakai tanda quote System.out.println (“Nilai 1” + varNilai2 + varNilai3); $varNilai1 = “Nilai 2”; $varNilai2 = “Nilai 3”; // varNilai2 dan varNilai3 jangan memakai tanda quote echo “Nilai 1” .varNilai2 .varNilai3 ; 11
  • 16. Object Oriented Programming Java & PHP ____________________________________________________ C. STRUKTUR KONTROL Struktur kontrol merupakan mekanisme untuk mengontrol alur program yang bergantung pada kondisi yang ditentukan 1. If-Else Penggunaan if-else berfungsi untuk mengontrol kondisi yang sudah ditentukan, sebuah kondisi memungkinkan terdapat sebuah pernyataan. Contohnya jika saya makan (kondisi) maka kenyang (pernyataan), jika tidak makan (kondisi) maka lapar (pernyataan). Pendeklarasian if.-else : if ( kondisi 1 ) { Pernyataan 1 diekseskusi jika kondisi 1 benar } else { Pernyataan 2 diekseskusi jika kondisi 1 salah } Java PHP String perut = “makan”; $perut = “makan if (perut==”makan”) { if ($perut==”makan”){ System.out.println (“Kenyang”); echo “Kenyang” ; } } else { else { System.out.println (“Lapar”); echo “Lapar” ; } } Output : Kenyang Variabel perut nilainy makan, artinya jika (if) kondisi perut nilainya sama dengan makan (perut==”makan”), maka pernyataan kenyang dieksekusi. Untuk menguji kondisi else, anda bisa mengubah nilai variabel perut dengan lainnya. 12
  • 17. Object Oriented Programming Java & PHP ____________________________________________________ maka pernyataan Lapar dieksekusi. Pertanyaannya mengapa pernyataan Lapar tidak spesifik ketika varibel perut diganti? artinya jika variabelnya diisi apapun maka kondisi elsenya tetap lapar. Untuk mengatasi permasalahan ini kita dapat menggunakan if bersarang (Nested If). Pendeklarasiannya : if ( kondisi 1 ) { Pernyataan 1 dieksekusi jika kondisi 1 sesuai } else if (kondisi 2) { Pernyataan 2 dieksekusi jika kondisi 1 tidak sesuai } else { Pernyataan 3 dieksekusi jika kondisi 1 dan 2 tidak sesuai } Java PHP String perut = “puasa”; $ perut = “puasa”; if (perut==” makan”) { if (perut==” makan”) { System.out.println (“kenyang”); echo “kenyang” ; } } else if (perut==”puasa” ){ else if (perut==”puasa” ){ System.out.println (“lapar” ); echo “lapar” } } else { else { System.out.println (“Invalid ); echo “Invalid” ; } } Output : Lapar Variabel perut nilainya puasa, maka kondisi yang cocok adalah else if (perut==”puasa”) dengan pernyataan “lapar”. Jika variabel perut nilainya diganti atau kosong, maka kondisi else dieksekusi dengan pernyataaan “Invalid” atau tidak ada pilihan yang cocok. 13
  • 18. Object Oriented Programming Java & PHP ____________________________________________________ 1. Switch-Case 2. Penggunaan switch-case hampir sama dengan if-else, dan switch- case menyajikan pilihan lebih banyak, seperti pada nested if. Kerja dari switch-case adalah membandingan nilai (kondisi) pada switch terhadap case pertama hingga case selanjutnya, hingga ditemukan nilai (kondisi) case yang sesuai. Bentuk deklarasi swicth-case sebagai berikut : switch (kondisi) { case 1: pernyataan 1; break; case 2: pernyataan 2; break; case 3: pernyataan 3; break; ..................................... default : pernyataan default; } Proses kerja dari switch-case Case Nilai Kondisi Pernyataan Case pertama 1 3 Tidak Cocok Case kedua 2 3 Tidak Cocok Case ketiga 3 3 Cocok Case pertama nilainya 1 tidak sama dengan 3, maka pernyataan pada case pertama tidak dijalankan. Case kedua nilainya 2 tidak sama dengan 3, maka pernyataan pada case kedua tidak dijalankan. Case ketiga kondisinya cocok dengan 3, maka proses dibreak atau dihentikan dan pernyataan pada case ketiga dijalankan. 14
  • 19. Object Oriented Programming Java & PHP ____________________________________________________ int CariNilai = 2; $CariNilai = 2; switch (CariNilai) { switch ($CariNilai) { case 1: case 1: System.out.println("Nilai 1"); echo "Nilai 1"; break; break; case 2: case 2: System.out.println("Nilai 2"); echo "Nilai 2"; break; break; case 3: case 3: System.out.println("Nilai 3"); echo "Nilai 3"; break; break; default: default: System.out.println("Invalid"); echo "Invalid"; } } Output : Nilai 2 Variabel CariNilai ingin mencari nilai 2 yang sesuai pada setiap case, ketika dicocokan dengan case 1 tidak cocok, kemudian dicocokan dengan case 2 ternyata nilainya sama, maka proses dibreak (dihentikan) dan pernyataan dieksekusi, dan case 3 tidak dijalankan atau ditelusuri lagi karena pada case 2 dibreak (dihentikan). 2. While While berfungsi sebagai iterasi atau perulangan, dimana penggunaan while lebih praktis ketika anda ingin melakukan perulangan terhadap suatu perintah yang banyak secara bersamaan tanpa harus menulis perintah satu persatu. Bentuk deklarasi while: while (kondisi) { pernyataan } Contohnya ketika kita ingin mencetak nilai 1 sampai 5. 15
  • 20. Object Oriented Programming Java & PHP ____________________________________________________ Menggunakan While Tanpa While angka = 1; Cetak _layar (1); jumlah = 5; Cetak _layar (2); while (angka <= jumlah) { Cetak _layar (3); cetak _layar (angka); Cetak _layar (4); angka++; } Cetak _layar (5); Selama nilai 5 (variabel jumlah) lebih kecil atau sama dengan nilai 1 (variabel angka), maka fungsi cetak_layar() akan terus dijalankan (mencetak) dengan kenaikan 1 (increment) yang dikerjakan perintah angka++. 3. For For seperti halnya while, yang berfungsi sebagai perulangan. Bentuk penulisan for sebagai berikut. for (inisialisasi; kondisi; iterasi [increment | decrement]) { Pernyataan } Inisialisasi : Menginisialisasi nilai awal, dan ekseskusi hanya dilakukan sekali. Kondisi : Mengecek kondisi, selama kondisi true(memenuhi), perintah terus diulang dan pernyataan terus dieksekusi hingga break (dihentikan) ketika nilainya false. Iterasi : Selama kondisi bernilai true (memenuhi), iterasi juga akan dikerjakan. 16
  • 21. Object Oriented Programming Java & PHP ____________________________________________________ Java PHP int inisialisasi = 0; $inisialisasi = 0; int kondisi = 5; $kondisi = 5; for(int i=inisialisasi; i< kondisi; for($i=$inisialisasi;$i<$kondisi; i++) { $i++) { System.out.println (i); echo $i; } } Output : 1 2 3 4 5 UMPAN BALIK 1. Apakah mungkin for di dalam for (nested for) ? Jawab : Pasti bisa. Jika menggunakan for bersarang maka for yang pertama kali dieksekusi adalah for kedua, kemudian for pertama. Contohnya sebagai berikut. for (i=0; i < 3; i++) { // for pertama for (j=0; j < 5; j++ ) // for kedua { Cetak_layar ( j ); // Cetak kelayar selama false } Cetak_layar ( n ); // Perintah pindah baris } Setiap for kedua terpenuhi kondisinya, maka for pertama akan mengiterasi for kedua hingga 3 kali. Proses dan hasilnya adalah 1 2 3 4 5 Iterasi for (i1) 1 2 3 4 5 Iterasi for (i2) 1 2 3 4 5 Iterasi for (i3) 17
  • 22. Object Oriented Programming Java & PHP ____________________________________________________ D. Konsep Dasar OOP OOP atau Object Oriented Programming merupakan paradigma pemograman yang berorientasi kepada Object. Semua data dan fungsi dibungkus kedalam Objek atau Kelas (Class). Keuntungan menggunakan pendekatan OOP adalah kemudahan dan fleksibilitas tinggi dalam mengembangkan perangkat lunak yang powerfull dan memungkinkan pengembangan perangkat lunak dalam skalabilitas besar, pendekatan OOP jauh lebih baik dibandingkan pendekatan pemograman secara prosedural. Untuk memahami pemograman berbasis OOP, maka ada baiknya anda memahami konsep-konsep dari OOP yang nantinya banyak digunakan dalam materi OOP (Object Oriented Programming). 1. Kelas (Class) Bagian terpenting dalam pemograman berbasis OOP adalah Class. Dimana class merupakan gambaran atau spesifikasi dari suatu object. Jika diandaikan, Class dapat disebut sebagai cetakan kue, dan hasil cetakan disebut Object. 2. Objek (Object) Bagian terpenting selain Class adalah Object, dimana kelas adalah spesifikasi dari object, maka object dapat diartikan sebagai perwujudan dari Class. Jika diandaikan, object merupakan hasil cetakan dari cetakan Class. Class atau Object memiliki 2 elemen penting yaitu Properties dan Method. 3. Properties (Atribut) Properties merupakan karekteristik dari suatu objek. Contoh pada objek pesawat dimana karakteristiknya dapat 18
  • 23. Object Oriented Programming Java & PHP ____________________________________________________ disebutkan dari warnanya, tahun pembuatan, tipe, dan sebagainya. Sehingga properties dapat dikatakan sebagai kata benda atau lebih ke pertanyaan apasaja ? 4. Fungsi (Method) Fungsi atau Method merupakan fungsi dari suatu object, atau dapat diartikan sebagai tingkah laku suatu object. Contoh pada object pesawat adalah bagaimana mengemudikan pesawat, bagaimana melendingkan pesawat, dan sebagainya. Sehingga method dapat dikatakan sebagai kata kerja atau lebih ke pertanyaan bagaimana. 5. Pewarisan (Inheritance) Pewarisan merupakan mekanisme menurunkan atau mewariskan sifat yang dimiliki parent (orang tua) kepada child (anaknya). Jika dalam pemograman OOP, class parent disebut sebagai superclass, sedangkan class child disebut sebagai subclass. Dimana subclass dapat menggunakan atau mewarisi method dan varibel yang dimiliki oleh superclass, namun subclass tetap bisa membuat atau menambahkan method dan varibel sendiri. 6. Interface (Polymorphism) Interface pada intinya sebagai share konstanta atau method kepada sejumlah class yang menggunakannya. Pemanggilan interface oleh Class menggunakan implement, untuk mengimplementasikan konstanta atau method yang dibutuhkan. Intinya, interface membungkus konstanta atau method, yang nantinya digunakan oleh class yang mengimplentasikannya. Interface dapat mewawisi interface yang lain, seperti halnya class pewarisan. 19
  • 24. Object Oriented Programming Java & PHP ____________________________________________________ E. Pemograman OOP Pada pembahasan sebelumnya, anda mempelajari konsep dasar OOP, pada pembahasan ini anda akan memperlajari mengimplementasikan OOP dalam pemograman Java dan PHP. 1. Class Pada pembahasan sebelumnya, class merupakan spesifikasi atau gambaran dari sebuah object. Sehingga bentuk pendeklarasian class pada Java dan PHP sama. class [Nama Kelas] { ............................. } dimana nama kelas sifatnya bebas anda definisikan, dan nama kelas tidak diawali dengan huruf Kapital atau huruf besar. Java PHP class Mobil { class Mobil { ......................... ........................... } } 2. Object Object adalah gambaran dari sebuah Class. Dimana untuk membuat sebuah object dari sebuah Class, maka gunakan keyword new. Bentuk pendeklarasian - Object [variabel reference] = new Object(); (Java) - $[variabel reference] = new Object(); (PHP) Dimana nama Object harus sama dengan nama suatu Class, dan variabel reference berfungsi merujuk atau mengakses elemen dari object yaitu properties dan method. 20
  • 25. Object Oriented Programming Java & PHP ____________________________________________________ 3. Properties (Atribut) Properties merupakan karakteristik dari sebuah object. Dimana properties umumnya memiliki Tipe Data dan variabel. Bentuk pendeklarasiannya adalah : - Tipe Data [variabel] = Nilai variabel (Java) - $[variabel] = Nilai variabel; (PHP) Java PHP class Mobil { class Mobil { // Properties // Properties String warna = “Merah”; $warna = “Merah”; int tahun = 2011; $tahun = 2011; } } 4. Method (Fungsi) Method merupakan fungsi atau tingkah laku dari suatu object. Deklarasi Method - public [Tipe Data] [Nama Method] ( ) { (Java) return [nilai] } - public function [Nama Method] ( ) { (PHP) return $[nilai] } Perintah return merupakan jenis method mengembalikan nilai, jika ingin mendeklarasikan method tanpa mengembalikan nilai, maka anda ganti bentuk Tipe Data dengan void jika pada Java dan jika pada PHP, anda tinggal hilangkan perintah return 21
  • 26. Object Oriented Programming Java & PHP ____________________________________________________ - public void [Nama Method] ( ) { (Java) ............................................... } - public function [Nama Method] ( ) { (PHP) ............................................... } Java PHP class Mobil { class Mobil { // Method non return // Method non return public void setMengemudi () public function setMengemudi () { { String isi = “setMenyetir”; $isi = “setMenyetir” System.out.println (isi); echo $isi; } } // Method return // Method return public String getMengemudi () public function getMengemudi() { { String isi = “getMengemudi”; $isi = “getMengemudi”; System.out.println (isi); echo $isii; return $isi; return $isi; } } 7. Mengakses Properties dan Method Pada pembahasan sebelumnya anda telah mempelajari bagaimana membuat class, properties, dan method, namun belum ada akses terhadap properties dan method. Untuk mengakses properties dan method, anda dapat menggunakan variabel reference dari objek yang sebelumnya sudah anda pelajari. Untuk mengakses anda dapat menggunakan (tanda titik) pada Java dan (tanda panah) pada PHP. 22
  • 27. Object Oriented Programming Java & PHP ____________________________________________________ Mobil varMob = new Mobil(); (Java) //varMob mengakses method setMengemudi varMob.setMengemudi ( ); $varMob = new Mobil(); (PHP) // varMob mengakses method getMengemudi $varMobgetMengemudi ( ); Variabel varMob (dibuat dari objek Mobil) mengakses method setMengemudi didalam Class Mobil , karena Objek Mobil perwujudan dari Class Mobil. Ingat, “bahwa object yang dibuat dari kelas tertentu hanya bisa mengakses dalam kelas itu saja”. Terdapat 2 kelas berbeda yaitu Class Mobil dan Class Orang. Java PHP class Mobil { class Mobil { public void setMobil ( ) { public function setMobil ( ) { System.out.println (“Mobil”); echo “Mobil”; } } } } class Orang { class Orang { public void seManusia ( ) { public function setOrang ( ) { System.out.println(“Orang”); echo “Orang”; } } } } Kemudian membuat Objek dari Class Mobil dan Class Orang. Mobil varMobil = new Mobil ( ); $varMobil = new Mobil ( ); OrangvarManusia = new Orang(); $varOrang = new Orang(); 23
  • 28. Object Oriented Programming Java & PHP ____________________________________________________ Setelah membuat Objek dari kedua Class tersebut yaitu Class Mobil dan Class Orang, tinggal mengakses method didalam kelas masing-masing menggunakan variabel reference. varMobil.setMobil(); $varMobilsetMobil(); varManusia.setManusia(); $varManusiasetManusia(); Output Mobil Mobil Manusia Manusia 8. Konstruktor dan Overiding Java menyediakan metode untuk membuat method dari sebuah class, artinya seorang programmer dapat membuat method yang namanya sama dengan nama classnya, metode ini disebut konstruktor. Contoh penggunaan konstruktor sebagai berikut : Java PHP class Biodata { class Biodata { // Method non-return value // Method non-return value public Biodata ( ) { public function Biodata ( ) { } } Perhatikan method Biodata memiliki nama yang sama dengan nama classnya yaitu Biodata. Namun beberapa point yang perlu di perhatikan dalam menggunakan konstruktor adalah:  Nama method harus sama dengan nama classnya.  Method konstruktor tidak boleh bertipe void atau return.  Method konstruktor dapat dibuat lebih dari satu, dengan nama class sama, tapi jumlah parameternya harus berbeda 24
  • 29. Object Oriented Programming Java & PHP ____________________________________________________ Pada point ketiga, terdapat istilah parameter , parameter adalah komponen atau atribut yang digunakan untuk menginisialisasi sebuah method. Parameter diletakkan didalam tanda kurung sebuah method. Perhatikan deklarasi method dan parameter. public [nama konstruktor] ( ) { (bentuk 1) ....................................... } public [nama konstruktor] ( parameter 1) { (bentuk 2) ....................................... } public [nama konstruktor] ( parameter 1, parameter 2) { (bentuk 3) ....................................... } Pada deklarasi ketiga bentuk method diatas, tedapat 3 method dengan jumlah parameter yang berbeda, pada bentuk pertama tidak memiliki parameter (default), pada parameter kedua memiliki sebuah parameter yaitu parameter 1, pada bentuk ketiga memiliki 2 buah parameter yaitu parameter 1 dan parameter 2. Bentuk deklarasi diatas dapat dikatakan sebagai “Overiding Konstruktor”, dan implementasi programmnya : 25
  • 30. Object Oriented Programming Java & PHP ____________________________________________________ Setelah membuat Objek dari kedua Class tersebut yaitu Class Mobil dan Class Orang, tinggal mengakses method didalam kelas masing-masing menggunakan variabel reference. varMobil.setMobil(); $varMobilsetMobil(); varManusia.setManusia(); $varManusiasetManusia(); Output Mobil Mobil Manusia Manusia 9. Konstruktor dan Overiding Java menyediakan metode untuk membuat method dari sebuah class, artinya seorang programmer dapat membuat method yang namanya sama dengan nama classnya, metode ini disebut konstruktor. Contoh penggunaan konstruktor sebagai berikut : Java PHP class Biodata { class Biodata { // Method non-return value // Method non-return value public Biodata ( ) { public function Biodata ( ) { } } Perhatikan method Biodata memiliki nama yang sama dengan nama classnya yaitu Biodata. Namun beberapa point yang perlu di perhatikan dalam menggunakan konstruktor adalah:  Nama method harus sama dengan nama classnya.  Method konstruktor tidak boleh bertipe void atau return.  Method konstruktor dapat dibuat lebih dari satu, dengan nama class sama, tapi jumlah parameternya harus berbeda 26
  • 31. Object Oriented Programming Java & PHP ____________________________________________________ Pada point ketiga, terdapat istilah parameter , parameter adalah komponen atau atribut yang digunakan untuk menginisialisasi sebuah method. Parameter diletakkan didalam tanda kurung sebuah method. Perhatikan deklarasi method dan parameter. public [nama konstruktor] ( ) { (bentuk 1) ....................................... } public [nama konstruktor] ( parameter 1) { (bentuk 2) ....................................... } public [nama konstruktor] ( parameter 1, parameter 2) { (bentuk 3) ....................................... } Pada deklarasi ketiga bentuk method diatas, tedapat 3 method dengan jumlah parameter yang berbeda, pada bentuk pertama tidak memiliki parameter (default), pada parameter kedua memiliki sebuah parameter yaitu parameter 1, pada bentuk ketiga memiliki 2 buah parameter yaitu parameter 1 dan parameter 2. Bentuk deklarasi diatas dapat dikatakan sebagai “Overiding Konstruktor”, dan implementasi programmnya : 27
  • 32. Object Oriented Programming Java & PHP ____________________________________________________ Bentuk deklarasi Method Overiding hampir sama dengan Konstruktor Overiding, perbedaanya pada Method Overiding pemberian nama method tidak sama dengan nama kelasnya, dan persamaannya antara method satu dengan method lainnya pemberian nama methodnya harus sama, namun dengan jumlah parameter berbeda. Contoh penggunaan dalam program Java PHP class Kendaraan { class Kendaraan { // parameter default // parameter default public Pesawat (String nama){ public function Pesawat($nama){ } } // parameter Nama & Jenis // parameter Nama & Jenis public Pesawat public function Pesawat (String nama, String jenis) { ($nama, $jenis){ } } Sebuah method pesawat dengan sebuah parameter “String Nama” dioveride dengan nama method yang sama yaitu pesawat dengan 2 buah parameter yaitu “String Nama” dan “String jenis”. Kemudian membuat object dari class Kendaraan dan membuat variabel reference untuk mengakses kedua method. Beberapa hal penting untuk mengakses method dan memberi nilai parameter method:  Pada konstruktor, setiap konstruktor diakses oleh variabel reference yang berbeda, jika pada non-konstruktor, method diakses menggunakan variabel reference sama (selama dalam class sama).  Pemberian nilai parameter pada konstruktor dilakukan ketika object dibuat. Jika pada non-konstruktor, nilai parameter di 28
  • 33. Object Oriented Programming Java & PHP ____________________________________________________ inisialisasi pada method itu sendiri ketika diakses melalui variabel reference. Contoh program mengakses method pesawat serta inisialisasi nilai Java PHP // Object sekali diciptakan // Object sekali diciptakan Kendaraan var = new Biodata( ); $Bio1 = new Kendaraan( ); // inisialisasi nilai parameter // inisialisasi nilai parameter // langsung dilakukan pada // langsung dilakukan pada // method Pesawat // method Pesawat var.Pesawat (“Sukoi”); $varPesawat (“Garuda”); var.Pesawat (“Sukoi”, $varPesawat (“Garuda”, “Tempur”); “Tempur”); 10. Pewarisan (Inheritance) Java menyediakan mekanisme pewarisan, dimana superclass (parent) memiliki hak akses terhadap subclass (child), dan begitu juga dengan subclass memiliki akses terhadap superclass selama superclass tidak disetting modifier private. Untuk membuat class pewarisan maka gunakan perintah extends // Membuat class parents (superclass) class parents { ............................ } // class child mewarisi elemen yang dimiliki oleh class parent // yang sudah dibuat class child extends parents { ........................... } 29
  • 34. Object Oriented Programming Java & PHP ____________________________________________________ Java PHP class Biodata { class Biodata { // parameter default // parameter default public Biodata ( ) { public function Biodata ( ) { konstruktor 1 konstruktor 1 } } // parameter Nama & Umur // parameter Nama & Umur public Biodata (String nama) { public function Biodata konstruktor 2 ($Nama, $umur) { konstruktor 2 } } Pada contoh program diatas, bentuk method konstruktor Biodata pertama, parameternya default (kosong), sedangkan bentuk method Biodata kedua memiliki parameter 2 buah parameter yaitu String Nama dan int Umur. Setelah membuat konstruktor dari class Biodata, maka tinggal membuat Object dari class Biodata dan variabel reference untuk mengakses method kontruktor Biodata. Terdapat beberapa point yang perlu diperhatikan  Setiap konstruktor yang dipanggil, harus menciptakan object baru yang sama,namun dengan nama variabel reference berbeda, artinya nama variabel reference harus berbeda dengan variabel reference yang lain  Pemberian nilai parameter pada konstruktor dilakukan ketika Object dibuat. Dimana pemberian nilai parameter, harus sesuai dengan jenis dan jumlah parameternya.  Pada konstruktor yang memiliki parameter default (kosong), maka ketika object dibuat nilainya dikosongi. 30
  • 35. Object Oriented Programming Java & PHP ____________________________________________________ Contoh pembuatan object untuk mengakses setiap konstruktor Biodata. Java PHP // Object dengan nilai default // Object dengan nilai default Biodata Bio1 = new Biodata ( ); $Bio1 = new Biodata ( ); // Object dengan nilai parameter // Object dengan nilai parameter // vanderoid. // vanderoid. Biodata Bio2 = $Bio2 = new Biodata (“Vanderoid”); new Biodata (“Vanderoid”); // Object dengan nilai parameter // Object dengan nilai parameter // vanderoid dan 24. // vanderoid dan 24. Biodata Bio3 = $Bio3 = new Biodata (“Vanderoid”, 24); new Biodata (“Vanderoid”, 24); Teknik Overiding tidak hanya diterapkan pada Konstruktor, namun dapat diterapkan pada non-konstruktor atau method biasa, dengan syarat bahwa method dengan nama yang sama, namun jumlah parameter yang berbeda, metode ini disebut dengan “Overiding Method”.Bentuk pendeklarasiannya public [nama method] ( ) { (bentuk 1) ....................................... } public [nama method] ( parameter 1) { (bentuk 2) ....................................... } public [nama method] ( parameter 1, parameter 2) { (bentuk 3) ....................................... } 31
  • 36. Object Oriented Programming Java & PHP ____________________________________________________ interface [Nama Interface A] { (implementasi A) } interface [Nama Interface B] extends [Nama Interface B]{ (implementasi B) } // class A mengimplementasi interface B , juga memiliki akses A class [Nama Class A] implements [Nama Interface B] { (implementasi A) (implementasi B) } Penerapan pewarisan (inheritance) pada interface, dimana class yang mengimplementasikan interface, cukup mengakses class childnya. Java PHP interface MamaliaA { interface MamaliaA { // Method diahkiri semicolon // Method diahkiri semicolon public void setMamaliaA( ); public function setMamaliaA(); } } interface MamaliaB extends interface MamaliaB extends MamaliaA { MamaliaA{ // Method diahkiri semicolon // Method diahkiri semicolo public public void setMamaliaB( ); function setMamaliaB(); } } class Binatang implements class Binatang implements MamaliaB { MamaliaB public void setMamaliaA ( ) { public function setMamaliaA(){ System.out.println (“Anjing”); echo ("Anjing"); } } public void setMamaliaB ( ) { public function setMamaliaB () { System.out.println(“Kucing”); echo ("Kucing"); }} }} 32
  • 37. Object Oriented Programming Java & PHP ____________________________________________________ F. ARRAY Pada pembahasan sebelumnya, anda telah mempelajari tentang tipe data primitif, mengapa saya katakan primitif ? “, karena penggunaannya masih sangat sederhana, dimana sebuah tipe data, hanya memiliki sebuah variabel untuk menampung sebuah nilai. Masalahnya, bagaimana jika kita ingin membuat sekumpulan varibel yang sangat banyak dengan tipe data tertentu yang sama ? Maka dari inilah java menyediakan mekanisme untuk mengelompokan atau membungkus sekumpulan variabel (meskipun jumlah variabelnya banyak) menjadi satu, kedalam tipe data yang sama. 1. Dasar Array Array merupakan kumpulan variabel yang dibungkus kedalam sebuah tipe data yang sama, artinya satu tipe data memiliki satu atau banyak variabel. Array menggunakan tanda “[ ]”; Jika di ilustrasikan, array di andaiakan sebuah keranjang buah dimana keranjang tersebut dapat diisi berbagai jenis buah-buahan (tergantung isi kapasitas/ukuran keranjangnya). Keranjang dapat dikatakan sebagai Tipe data array, dan variabel dapat dikatakan buah-buahan. Tipe data array dapat diatur kapasitas atau ukurannya (seperti halnya keranjang) untuk menampung banyaknya variabel yang mampu di tampung. Untuk mengatur ukuran atau kapasitas array, bentuk deklarasinya (Tipe Data Array) ( nama array) = new (Tipe Data Array) [ ukuran ]; Tipe Data Array : Mendefiniskan tipe data (String, Integer, Character, Double, Float). Nama Array : Mendefinsikan nama Array. New : Membuat Object Array Ukuran : Menentukan ukuran array (berupa angka). 33
  • 38. Object Oriented Programming Java & PHP ____________________________________________________ Untuk mengakses variabel array dan memberikan nilai setiap variabel, maka dapat dideklarasikan sebagai berikut : ( Nama Array ) [ index-1] = ( Nilai varibel ); Index n-1 Index menyatakan posisi variabel berdasarkan penomeran atau letak sebuah variabel, Penomeran index dimulai dari 0 hingga index-1. Nilai Variabel Nilai variabel diberikan pada setiap variabel. Contoh jika terdapat sebuah Tipe data “String” dengan Nama variabel Array “varArr”, dan kapasitas atau ukuran Array diset 5. Maka : (Pemogramman Java) String varArr = new String [5]; // membuat object array, kapasitas 5 Dimana Array maksimal mampu menampung 5 variabel, jika diisi lebih dari 5 variabel, maka terjadi overflow (kelebihan kapasitas). Kemudian mengakses variabel array dan memberikan nilai variabel. varArr[0] = “Nilai A”; // variabel pertama pada index ke-0 varArr[1] = “Nilai B”; // variabel kedua pada index ke-1 varArr[2] = “Nilai C”; // variabel ketiga pada index ke-2 varArr[3] = “Nilai D”; // variabel keempat pada index ke-3 varArr[4] = “Nilai E”; // variabel kelima pada index ke-4 Jika di ilustrasikan program pada gambar berikut ini : a ) Menyiapkan Array dengan ukuran 5 (menyiapkan sebanyak 5 slot) Slot 0 Slot 1 Slot 2 Slot 3 Slot 4 b) Kemudian mengisi setiap slot dengan setiap variabel “varArr[0]” hingga “varArr[4]”. Maka ilustrasinya menjadi : varArr[0] varArr[1] varArr[2] varArr[3] varArr[4] 34
  • 39. Object Oriented Programming Java & PHP ____________________________________________________ Jika sebelumnya anda mendeklarasikan array dan menginisialisasi nilainya pada setiap variabel “varArr” seperti ini : varArr[0] = “Nilai A”; // variabel pertama pada index ke-0 ................................... varArr[4] = “Nilai E”; // variabel kelima pada index ke-4 Terdapat alternatif lain, yaitu setelah mendeklarasikan array langsung menginisialisasi nilainya dalam tanda kurawal “{}” jika menggunakan Java, dan jika PHP inisialisasi nilai dalam tanda ( ) String varArr [ ] = { “Nilai A”, “Nilai B”, “Nilai C”, “Nilai D”, “NilaiE”}; (Java) $varArr = array (“Nilai A”, “Nilai B”, “Nilai C”, “Nilai D”, “NilaiE”); (PHP) Jika anda perhatikan, setelah mendeklarasikan array, maka dapat langsung menginisialisasi nilainya. Untuk mengakses nilainya, kita bisa mengiterasi indexnya, dan menghitung panjang elemen array. Proses Algoritma  Menginisialisasi nilai awal  i = 0 // asumsikan n nilainya 0  Hitung panjang array dan  i < varArr.count ( ) // Java kondisikan dengan i = n. i < $varArrlength ( ) // PHP  Increment selama kondisi true  i++  Memetakan array setiap index  varArr [ i ]; selama kondisi true. Untuk menghitung panjang array, java menyediakan perintah length(), dan jika pada PHP menyediakan perintah count ( ). for ( int i=0; i <= varArr.length(); i++) (Java) for ( $i=0; $i <= count($varArr); $i++) (PHP) 35
  • 40. Object Oriented Programming Java & PHP ____________________________________________________ Panjang array diartikan sebagai jumlah index, dimana pada varArr memiliki jumlah index 5 (jika dihitung dari 0). Jika di ilustrasikan : varArr[0] varArr[1] varArr[2] varArr[3] varArr[4] Index ke-1 Index ke-2 Index ke-3 Index ke-4 Index ke-5 Setelah panjang array diketahui sepanjang 5, maka tinggal mengiterasi varArr selama kondisinya bernilai true, untuk menngakses nilainya, gunakan perintah varArr [ i ], perhatikan prosesnya dibawah ini : Kondisi True / False ? varArr [ i ]. Nilai i < 0 ? atau i = 0 ? True (i=0) varArr[ 0 ] Nilai A i < 1 ? atau i = 1 ? True (i<1) varArr[ 1 ] Nilai B i < 2 ? atau i = 2 ? True (i<2) varArr[ 2 ] Nilai C i < 3 ? atau i = 3 ? True (i<3) varArr[ 3 ] Nilai D i < 4 ? atau i = 4 ? True (i<4) varArr[ 4 ] Nilai E Dimana inisialisasi nilai awal adalah 0 (i = 0), kemudian cek kondisi, apakah 0 < 0 ? atau 0 = 0 ? ternyata salah satu kondisi yaitu 0 = 0 memenuhi dan nilainya true, maka masukkan nilai i=0 kedalam tanda [ ] pda varArr [0], dan set nilainya untuk varArr [0] = “Nilai A”, lanjutkan proses yang sama hingga varArr [4]. Java PHP int [ ] nilai = {70,80,90,100}; $nilai [ ] = array (70,80,90,100); for(int i=0; i<nilai.lengh(); i++) { for($i=0;$i<count($varArr);$i++){ System.out.println (nilai[i]); echo ($nilai[$i]); } } Output : 70,80,90,100 36
  • 41. Object Oriented Programming Java & PHP ____________________________________________________ UMPAN BALIK 1. Dapatkan posisi index pada array ditentukan sendiri posisinya ? Jawab : bisa, metode ini dinamakan array assosiatif. Secara default, pemetaan index array dimulai berurutan dari kiri ke kanan, atau posisi index ke-0, 1, 2...., n-1, jika menggunakan array assosiatif, pemetaan index array dapat di tentukan sendiri. Bentuk deklarasi untuk array assosiatif adalah : [nama array] = array ( [index_assoc] => Nilai) Index_assoc : Posisi index opsional (ditentukan user), tanda ( => ), digunakan untuk memetakan nilai sesuai dengan posisi indexnya. Contoh penggunaan array assosiatif pada PHP sebagai berikut : Diketahui array dengan nilai default (sebelum array assosiatif) $varArr = array (“Malang”, ”Bandung”, “Jakarta”, “Surabaya” ) Kemudian dilakukan proses array assosiatif sebagai berikut : $varArr = array ( 3 => “Malang”, // Malang berada pada index ke-3 0 => “Bandung”, // Bandung berada pada index ke-0 2 =>” Jakarta”, // Jakarta berada pada index ke-2 1 => ”Surabaya” // Bandung berada pada index ke-1 ); Outputnya sebelum dan sesudah dilakukan array assosiatif : Malang Bandung Jakarta Surabaya (sebelum) Bandung Surabaya Jakarta Malang (sesudah) 37
  • 42. Object Oriented Programming Java & PHP ____________________________________________________ G. Exception Handling Metode yang disediakan oleh java untuk menangani kesalahan adalah Exception Handling. Dengan menggunakan metode ini, kita dapat mendefiniskan sendiri pesan kesalahan sesuai dengan style kita. Hal ini memudahkan dalam memahami pesan kesalahan pada program. Contohnya kesalahan ketika melakukan pembagian dengan bilangan nol, secara default java akan menampilkan pesan kesalahan yaitu : “java.lang.ArithmeticException: / by zero” Jika kita menggunakan Exception Handling, maka pesan kesalahan dapat kita tampilkan dengan style kita, misalnya seperti ini pesan: “Error, pembagian dengan nilai nol tidak diizinkan” Exception Handling memiliki 2 elemen khusus dalam penanganan kesalahan, yaitu try dan catch. try berfungsi menampung program yang akan dicek kemungkinan jika terjadi eksepsi, sedangkan catch akan menangkap kesalahan jika memang program terjadi kesalahan atau eksepsi. Pendeklarasian try-catch : try { (Cek Kemungkinan Program) // Cek kemungkinan program } catch ( Tipe Eksepsi ){ // Tipe Eksepsi (pesan kesalahan) } Pada pemograman Java, terdapat tipe eksepsi yang khusus untuk menangani kesalahan. Seperti tipe eksepsi “ArrayIndexOutOfBounds Exception” untuk menangani eksepsi pada Array. Kemudian tipe “ArithmeticException” untuk menangani eksepsi pada aritmatika. 38
  • 43. Object Oriented Programming Java & PHP ____________________________________________________ Namun kita dapat menggunakan tipe eksepsi secara umum, yang hampir bisa digunakan untuk menangani semua kesalahan, yaitu “Exception”, tipe eksepsi ini berlaku pada Java dan PHP. Contoh program eksepsi Aritmatika pembagian nilai nol : Java PHP class Hitung { class Hitung { void setNilai (int op1, int op2) { function setNilai ($op1, $op2) { try { try { int hasil = op1 / op2; $hasil = $op1/$op2; } } catch (Exception e) { catch (Exception $e){ System.out.println echo "ERROR" .$e; ("pembagian error"); } } } } Method setNilai dengan 2 parameter sebagai operand yaitu op1 dan op2. Kemudian membuat objek dari kelas Hitung Java PHP Hitung varDiv = new Hitung ( ); $varDiv = new Hitung ( ); $varDiv.setNilai (8,0); $varDiv setNilai (8,0); Output Pembagian Error Warning: Division by zero Ketika method setNilai dipanggil dan diberikan nilai parameter 8 dan 0, maka pesan kesalahan ditampilkan, karena adanya pembagian nol. 39
  • 44. Object Oriented Programming Java & PHP ____________________________________________________ CATATAN PENULIS Alhamdulliah penulisan buku yang berjudul Java & PHP berbasis OOP telah terselesaikan. Diharapkan setelah anda mempelajari buku yang masih sederhana ini, anda memiliki bekal pengetahuan tentang 2 bahasa pemograman sekaligus yaitu Java dan PHP yang berbasis Object Oriented Programming yang banyak digunakan untuk pengembangan Aplikasi. Dan dengan buku ini, menjadi bekal bagi anda untuk membuat aplikasi yang lebih powerfull. Saya Novan Surya Ardani adalah penulis buku ini dan buku ini sengaja saya bagikan kepada anda secara cuma-cuma atau gratis dan semata-mata hanya tujuan untuk amal dan ibadah. Semoga buku ini bermanfaat bagi anda.Amin. Dan jika anda memiliki saran, kritik, serta pertanyaan dapat anda kirimkan ke :  Email : liv3d_rocks@yahoo.com  Website : vanderocks.wordpress.com  Facebook : www.facebook.com/profile.php? id=100000073924967 Assalamualaikum Wr.Wb 40