Abstract
Abstract class adalah class yang
mempunyai Paling tindak ada satu abstract method. Dan abstract method yang
hanya mendeklarasikan method, Dan ada beberapa yang dapat dikenali kalua Class
tersebut adalah Class Abstract yaitu:
1. Class Abstract berisi beberapa method
dan beberapa method abstract.
2. Abstract class tidak akan bisa diberi
sebuah object.
3. Jadi untuk membuat sebuah object, Suatu Abstract class
harus diturunkan dimana subclass tersebut berisi implementasi dari abstract
method yang ada superclass nya
Imprementasi class Abstract sebuah Code Java :
|
|
Abstract class Tumbuhan
|
|
public abstract class Tumbuhan {
void Tumbuhan(){
System.out.println("Class Tumbuhan");
}
public abstract void setName();
public abstract void setJenis();
public static void main(String[] args){
Tumbuhan A = new Apel();
A.Tumbuhan();
A.setName();
A.setJenis();
Tumbuhan K = new Kurma();
K.Tumbuhan();
K.setName();
K.setJenis();
}
}
|
|
-
Deklarasikan method abstract, jika ada satu
atau lebih subclass yang diharapkan mempunyai fungsionalitas yang sama tapi
implementasi berbeda.
|
|
Abstract class Jenis
Tumbuhan
|
|
abstract class dikotil extends Tumbuhan {
public void dikotil(){
System.out.println("Tumbuhan ini dikotil");
}
public abstract void setName();
public abstract void setJenis();
public abstract void setJenisAkar();
public static void main(String[] args){
dikotil A = new Apel();
A.Tumbuhan();
A.setName();
A.setJenis();
A.setJenisAkar();
}
}
|
abstract class monokotil extends Tumbuhan {
public void monokotil() {
System.out.println("Tumbuhan ini monokotil");
}
public abstract void setName();
public abstract void setJenis();
public abstract void setJenisAkar();
public static void main(String[] args){
monokotil J = new Jagung();
J.Tumbuhan();
J.setName();
J.setJenis();
J.setJenisAkar();
}
}
|
-
Class Dikotil ini adalah turunan dari Class
Tumbuhan
|
-
Class Monokotil ini adalah turunan dari Class
Tumbuhan
|
-
Deklarasikan method abstract, jika ada satu
atau lebih subclass yang diharapkan mempunyai fungsionalitas yang sama tapi
implementasi berbeda.
|
|
Concrete Class yang dihasilkan Tumbuhan
|
|
public class Apel extends dikotil{
public void setName(){
System.out.println
("Apel");
}
public void setJenis(){
System.out.println
("Apel adalah \"Dikotil\"");
}
public void setJenisAkar(){
System.out.println
("Apel berakar \"Tunggang\"");
}
}
|
public class Kurma extends monokotil {
public void setName(){
System.out.println("Kurma");
}
public void setJenis(){
System.out.println("Kurma adalah \"Monokotil\"");
}
public void setJenisAkar(){
System.out.println("Kurma berakar \"Serabut\"");
}
}
|
Class Apel ini adalah implemtasi
detail yang menjelaskan secara detail dan extends Class Dikotil
|
Class Buah ini adalah implementasi
detail yang menjelaskan secara detail
dan extends Class Monokotil.
|
Interface
Interface ini berisi method kosong dan Konstanta. Dan method dalam Interface ini tiddak mempunyai statement. Jadi deklarasi method dalam interface sama dengan deeklarasi abstract method pada abstract class.
Imprementasi class Interface sebuah Code Java :
Concrete Class yang diatas kita
tambahkan “implements“
|
|
public class Apel extends dikotil implements buah{
public void setName(){
System.out.println
("Apel");
}
public void setJenis(){
System.out.println
("Apel adalah \"Dikotil\"");
}
public void setJenisAkar(){
System.out.println
("Apel berakar \"Tunggang\"");
}
}
|
public class Kurma extends monokotil implements buah{
public void setName(){
System.out.println("Kurma");
}
public void setJenis(){
System.out.println("Kurma adalah \"Monokotil\"");
}
public void
setJenisAkar(){
System.out.println("Kurma berakar \"Serabut\"");
}
}
|
-
Class
Apel ini adalah implemtasi detail yang menjelaskan secara
detail dan turunan dari Class Dikotil dan diimplementasiakan ke interface
|
-
Class
Kurma ini adalah implemtasi detail yang menjelaskan
secara detail dan turunan dari Class Dikotil dan diimplementasiakan ke
interface
|
Membuat Interface dengan nama
buah sesuai dengan jenisnya
|
|
public interface buah {
public abstract void setName();
}
|
|
-
Deklarasi method dalam interface sama
dengan deklarasi abstract method pada abstract class
|
|
Concrete
Class
Concrete adalah Class dapat membuat Object yang dapat menurunkan implementasi
dari super class dan juga Dapat sebagai base class pada hierarchical
relationship dan membutuhkan class lain untuk mewarisinya
Imprementasi class Interface sebuah Code Java :
Concrete Class
|
|
public class Apel extends dikotil implements buah{
public void setName(){
System.out.println
("Apel");
}
public void setJenis(){
System.out.println
("Apel adalah \"Dikotil\"");
}
public void setJenisAkar(){
System.out.println
("Apel berakar \"Tunggang\"");
}
}
|
public class Kurma extends monokotil implements buah{
public void setName(){
System.out.println("Kurma");
}
public void setJenis(){
System.out.println("Kurma adalah \"Monokotil\"");
}
public void
setJenisAkar(){
System.out.println("Kurma berakar \"Serabut\"");
}
}
|
-
Class
Apel ini adalah implemtasi detail yang menjelaskan secara
detail dan turunan dari Class Dikotil dan diimplementasiakan ke interface
|
-
Class
Kurma ini adalah implemtasi detail yang menjelaskan
secara detail dan turunan dari Class Dikotil dan diimplementasiakan ke
interface
|
Contoh Imprementasi seluruhnya:
public abstract class Tumbuhan {
void Tumbuhan(){
System.out.println("Class
Tumbuhan");
}
public abstract void setName();
public abstract void setJenis();
public static void main(String[]
args){
Tumbuhan A = new Apel();
A.Tumbuhan();
A.setName();
A.setJenis();
Tumbuhan K = new Kurma();
K.Tumbuhan();
K.setName();
K.setJenis();
}
}
|
public abstract class Tumbuhan {
void Tumbuhan(){
System.out.println("Class
Tumbuhan");
}
public abstract void setName();
public abstract void setJenis();
public static void main(String[]
args){
Tumbuhan A = new Apel();
A.Tumbuhan();
A.setName();
A.setJenis();
Tumbuhan K = new Kurma();
K.Tumbuhan();
K.setName();
K.setJenis();
}
}
|
abstract class monokotil extends Tumbuhan {
public void monokotil()
{
System.out.println("Tumbuhan
ini monokotil");
}
public abstract void setName();
public abstract void setJenis();
public abstract void
setJenisAkar();
public static void main(String[]
args) {
monokotil J = new Jagung();
J.Tumbuhan();
J.setName();
J.setJenis();
J.setJenisAkar();
monokotil K = new Kurma();
K.Tumbuhan();
K.setName();
K.setJenis();
K.setJenisAkar();
}
}
|
public class Apel extends dikotil implements buah{
public void setName(){
System.out.println
("Apel");
}
public void setJenis(){
System.out.println
("Apel adalah \"Dikotil\"");
}
public void
setJenisAkar(){
System.out.println
("Apel berakar \"Tunggang\"");
}
}
|
public class Apel extends dikotil implements buah{
public void setName(){
System.out.println
("Apel");
}
public void setJenis(){
System.out.println
("Apel adalah \"Dikotil\"");
}
public void
setJenisAkar(){
System.out.println
("Apel berakar \"Tunggang\"");
}
}
|
public class Tomat extends dikotil implements sayur{
public void setName(){
System.out.println("Tomat");
}
public void setJenis(){
System.out.println("Tomat adalah \"Dikotil\"");
}
public void
setJenisAkar(){
System.out.println("Tomat berakar \"Tunggang\"");
}
}
|
public class Jagung extends monokotil implements sayur{
public void setName(){
System.out.println("Jagung");
}
public void setJenis(){
System.out.println("Jagung adalah \"Monokotil\"");
}
public void
setJenisAkar(){
System.out.println("Jagung berakar \"Serabut\"");
}
}
|
public class Kurma extends monokotil implements buah{
public void setName(){
System.out.println("Kurma");
}
public void setJenis(){
System.out.println("Kurma adalah \"Monokotil\"");
}
public void
setJenisAkar(){
System.out.println("Kurma berakar \"Serabut\"");
}
}
|
public interface sayur {
public abstract void setName();
}
|
public class Main {
public static void main(String
args[]){
sayur k=new Tomat();
k.setName();
sayur y=new Jagung();
y.setName();
buah q=new Apel();
q.setName();
buah e=new Kurma();
e.setName();
}
}
|
-
Class ini untuk menampilkan Apa saja yang
termasuk buah dalam bentuk String
|


0 komentar:
Posting Komentar