Kamis, 19 Februari 2015
Abstract Class
adalah sebuah class setengah jadi (abstrak) yang memuat/memiliki method dan atrribut. Abstract class sebenarnya adalah sebuah class, sehingga memiliki semua sifat dari class biasa (punya konstruktor). Hanya saja sifatnya masih abstrak, karena itu biasanya method kosong/belum di implementasikan. Namun Abstract class dapat mengimplementasikan method tersebut. Abstract class akan selalu menjadi superclass / hirarki tertinggi dari subclass-subclass-nya.
Kelas abstrak digunakan untuk membuat sebuah kelas yang memiliki method yang belum jelas implementasinya. Berikut ini aturan nya :
- Jika sebuah kelas memiliki method abstrak maka kelas itu harus menjadi kelas abstrak.
- Sebuah kelas abstrak dapat saja memiliki method yang tidak abstrak.
- Jika sebuah kelas abstrak diturunkan menjadi kelas konkret, maka semua method abstrak dari kelas abstrak haruslah ditulis ulang / dibuat ulang di kelas konkretnya dan diberi detail dari methodnya.
- Jika method abstrak di turunkan dan kelas turunannya adalah kelas abstrak, maka tidak perlu menulis ulang method yang abstrak.
Abstract class adalah kelas murni (tanpa objek) dan tidak boleh memiliki objek (tidak boleh ada instansiasi) serta method-method yang abstract harus disempurna-kanoleh kelas turunannya melalui override. Kelas seperti ini biasanya merupakan rootsuatu struktur kelas.Konsekuensi penggunaan sifat abstract :1.Tidak dapat dibuat constructor yang abstract.2.Tidak dapat dibuat method yang static dan abstract (kedua sifat salingkontradiktif).3.Tidak diijinkan membuat method yang private dan abstract (kedua sifat ini jugasaling Kontradiktif)
Kelas abstrak adalah kelas yang terletak pada posisi tertinggi hierarki kelas.
Kelas ini digunakan sebagai basis bagi penurunan kelas-kelas lainnnya, sehingga tidak dapat
diinstansiasi secara langsung menjadi objek. Sebagai kelas basis kelas ini hanya berisi
variable-variable umum dan deklarasi method tanpa detail implementasi.
Selanjutnya, kelas-kelas yang diturunkan dari kelas abstraklah yang harus mendefinisikan secara detail method
tersebut. Abstract class adalah class yang di dalam terdapat fungsi abstract.
Fungsi abstract adalah fungsi tanpa implementasi, di mana dikarenakan sifatnya terlalu general sehingga tidak bisa diimplementasikan
Contoh:
</div>
<div>package oop2_widy1_abstractclass;
import java.util.*;
public class Main
{
private static Scanner input = new Scanner(System.in);
static implementasi imp = new implementasi();
public static void main(String[] args)
{
implementasi wek = new implementasi();
String nama = "Ni Made Putri Widiastuti";
String ttl = "Banyuwangi, 22 April 1993";
String aktivitas = "Berolahraga";
wek.tes();
wek.met(nama,ttl,aktivitas);
System.out.println("Press any key to continue . . . ");
System.out.println();
}
}
abstract class pertama
{
public abstract void met(String nama, String ttl, String aktivitas);
public void tes()
{
System.out.println("Biodata :Ni Made Putri Widiastuti STIKOM PGRI BANYUWANGI");
}
}
class implementasi extends pertama
{
public void met(String nama, String ttl, String aktivitas)
{
System.out.println("Nama : "+nama);
System.out.println("Tempat, Tanggal Lahir : "+ttl);
System.out.println("Aktivitas Terkini : " +aktivitas);
}
}</div>
<div>
Sumber: https://sangwidy.wordpress.com/web-design/oop-2/5-inner-class-abstrak-class/abstract-class/
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar