AGENDA
Tutorials - Java
Tut 8: OOP Bagian 2

Polymorphisme berarti mempunyai banyak bentuk. Dalam OOP, berlaku pada metode override dan overload.



Polymorphisme

Polymorphisme berarti mempunyai banyak bentuk. Dalam OOP, polymorphisme berlaku pada metode.

  • Override : pendefenisian ulang metode oleh subclass. Metode, Return type, dan parameter harus sama.
  • Overload : pendefenisian ulang metode dalam class yang sama. Metode dan tipe parameter harus berbeda dalam class yang sama.

 

Contoh Program

Program Cetak Nama
Program ini bertujuan untuk mencetak data dengan berbagai tipe. Menerapkan Polymorphisme. Program dieksekusi di kelas main.

// Kelas CetakData.java 

/*
 Nama File : CetakData.java
 Programmer: Frans Siahaan
 Tanggal   : 26 November 2012
 Deskripsi : Membuat Kelas untuk mencetak data dengan berbagai tipe
 */
class CetakData {

    public void CetakData(int Cetak) {
        System.out.println(Cetak);
    }

    public void CetakData(double Cetak) {
        System.out.println(Cetak);
    }

    public void CetakData(char Cetak) {
        System.out.println(Cetak);
    }
}
// Kelas Main.java

/*
 Nama File : Main.java
 Programmer: Frans Siahaan
 Tanggal : 26 November 2012
 Deskripsi : Membuat kelas Main untuk menjalankan program
 */
public class Main {

    public static void main(String[] args) {
        CetakData data = new CetakData();

        System.out.println("Cetak Data Tipe Integer");
        System.out.print("Tahun Pembuatan : ");
        data.CetakData(2012);

        System.out.println();

        System.out.println("Cetak Data Tipe Double");
        System.out.print("Telah Mendapatkan Nilai : ");
        data.CetakData(90 / 2);

        System.out.println();

        System.out.println("Cetak Data Tipe Char");
        System.out.print("Grade Pada Nilai Anda Adalah : ");
        data.CetakData('A');
    }
}

Jika program dijalankan, maka hasilnya seperti gambar berikut :

 

Program Point
Program ini bertujuan untuk membuat objek baru dari kelas yang sudah ada dengan kelas Point sebagai kelas induk. Menerapkan inheritance, enkapsulasi, dan polymorphisme. Terdiri dari 3 kelas. Program dieksekusi di kelas main.

// Kelas Point.java

/*

 Nama File : Point.java
 Programmer: Frans Siahaan
 Tanggal   : 26 November 2012
 Deskripsi : Membuat Kelas Point (Kelas Induk)
 */
class Point {
    //Atribut
    int x;
    int y;

    //Konstruktor1
    public Point() {
        x = 0;
        y = 0;
    }

    //Konstruktor2
    public Point(int a, int b) {
        x = a;
        y = b;
    }

    public void setx(int a) {
        x = a;
    }

    public void sety(int b) {
        y = b;
    }

    public int getx() {
        return x;
    }

    public int gety() {
        return y;
    }

    public void info() {
        System.out.println("x = " + x);
        System.out.println("y = " + y);
    }

    public void geser(int a, int b) {
        x = getx() + a;
        y = gety() + b;
    }
}
// Kelas Circle.java

/*
 Nama File : Circle.java
 Programmer: Frans Siahaan
 Tanggal : 26 November 2012
 Deskripsi : Membuat Kelas Circle Extends kelas Point
 */
import java.util.Scanner;

class Circle extends Point {

    double r;

    public Circle() {
        super();
        r = 0;
    }

    public Circle(double c, int a, int b) {
        super(a, b);
        r = c;
    }

    public double Area() {
        return (Math.PI * r * r);
    }

    public void info() {
        System.out.println("x = " + this.getx());
        System.out.println("y = " + this.gety());
        System.out.println("r = " + r);
        System.out.println("Area = " + Area());
    }
}
// Kelas Main.java

/*
 Nama File : Main.java
 Programmer: www.aplysit.com
 Tanggal : 26 November 2012
 Deskripsi : Membuat Kelas Main Untuk Menjalankan Program
 */
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Circle d = new Circle();
        d.info();

        System.out.println();

        Circle e = new Circle(5, 3, 3);
        e.info();
    }
}

 Jika program dijalankan, maka hasilnya seperti gambar berikut :

Latihan

  1. Buatlah program dengan kelas induk Manusia. Kemudian kelas Manusia memiliki 2 kelas turunan, yaitu Dosen dan Mahasiswa. Atribut yang dimiliki di kelas induk adalah Nama, Umur, dan Jenis Kelamin. Kelas Manusia memiliki atribut tambahan NIM dan Mata Kuliah. Kelas Dosen memiliki atribut tambahan NIP dan Jadwal Mengajar.
  2. Buatlah program dengan kelas induk sisi. Kemudian kelas Sisi memiliki 4 kelas turunan, yaitu Persegi, Kubus, Persegi panjang, dan Balok. Atribut yang dimiliki di kelas induk adalah Sisi. Kelas Persegi panjang memiliki atribut tambahan Panjang. Kelas Balok memiliki atribut tambahan Panjang dan Lebar. kemudian hituglah luas untuk Persegi dan Persegi panjang, dan volume untuk Kubus dan Balok.

Like or Share This Article



COMMENTS ( 0 )
 
Keep connected with us, mobile apps available now !!