Thursday, May 29, 2014

Perbedaan overloading dengan overriding pada Java

Mengenai Overloading vs Overriding, disini saya akan mencoba untuk menjelaskan perbedaan keduanya, dimana biasanya untuk para pemula agak susah atau sering lupa dalam memalhami dua istilah OOP ini. Dari beberapa sumber buku artikel, teman dan juga para dosen saya akan merangkum secara sederhana agar mudah di fahami mengenai apa itu overloading? dan apa itu overreading?. Baik kita langsung saja mulai menterjemahkan keduannya.



1.  Overloading

  • Nama method sama.
  • Parameter Berbeda.
  • Biasanya dalam satu class.
Contoh Sederhana Overloading :

Class RoundingValue {

      private double defaultGrade = 100.3;

      public RoundingValue(){}

      /* 
      * First Method
      */
      public double roubdingUp () {
           System.out.println("Excecuting first method");
           Return (double) Math.ceil(defaultGrade);
      }

      /*
      * Second Method - Its have different parameter with first method
      */
      public double roubdingUp (double numberGrade) {
           System.out.println("Excecuting second method");
           Return (double) Math.ceil(numberGrade);
      }

      /*
      * Main Method - First Call
      */
      public static void main String[] args() {
           RoundingValue roundingValue = new RoundingValue();

           System.out.print("Value from first method : ");
           System.out.println(""+ roundingValue.roubdingUp() );


           System.out.print("Value from first method : ");
           System.out.print(""+ roundingValue.roubdingUp(222.2));

      }

}



2.  Overriding

  • Nama method sama.
  • Isi / Body method berbeda.
  • Biasanya berbeda class. interface dan implement.
Contoh Sederhana Overreading :
First Class

Class OverRiding  {

        public OverRiding(){}
        
        /*
        * First Method
        */
        public void firstMethod ( ) {
               System.out.println("Method on class OverRiding is calling ");
        }

}

Second Class

Class SubOverRiding extends OverRiding {

        /*
        * Override First Method on class OverRiding
        */
        public void firstMethod () {
              System.out.println("This method override ");
              System.out.println("Method on class SubOverRiding in calling ");
        }

        /*
        * Main Method
        */
        Public static void main (String [ ] args) {
               new OverRiding().firstMethod();

               new SubOverRiding().firstMethod();;
        }

}

Terimakasih, dari penjelasan saya diatas kalau ada beberapa hal yang belum di mengerti bisa tinggalkan pesan di blog saya. selamat mencoba !

2 comments:

  1. bang. contohnya bagus buat intermed. tapi klo buat newbie sedikit over. klo bisa pake bahasa indonesia. screenshoot running codenya juga g ada.
    ini "Return (double) Math.ceil(numberGrade); " bang yang buat newbie bingung klo g googling.

    ReplyDelete
    Replies
    1. :D baiklah nanti memakai bahasa indonesia di artikel-artikel berikutnya. tapi ini sebenarnya sudah minim bahasa inggris kok, ada pun bahasa inggris disitu ya memang istilah dari Java yang tidak semestinya di bahasa indonesiakan

      Delete