Menampilkan Komponen Penting Java Menggunakan Abstraksi
Class Abstrak dan Method Abstrak:
- Class abstrak adalah class yang dideklrasikan dengan menggunakan keyword abstract.
- Method abstrak adalah method yang dideklarasikan tanpa implementation.
- Abstrak class mungkin memiliki atau tidak memiliki method abstrak. Beberapa dari abstrak class tersebut bisa saja memiliki method yang terkonsentrasi.
- Sebuah method yang akan didefinisikan sebagai abstrak harus selalu didefinisikan ulang dalam subclass, hal ini dilakukan guna menciptakan overriding compulsory atau membuat subclass itu sendiri sebagai abstrak.
- Class apapun yang mengandung lebih dari satu abstrak harus selalu dideklrasikan dengan menggunakan keyword abstrack.
- Tidak akan ada object dari class abstrak. Class abstrak tidak bisa diinisialisasi secara langsung dengan menggunakan operator new.
- Class abstrak dapat memiliki parameter constructor dan default constructor yang akan selalu tersedia pada class abstrak.
Kelas Abstrak Java
abstract class Bentuk
{abstract void gambar();}
class Lingkaran extends Bentuk {
void gambar()
{System.out.println("Gambar lingkaran");}
}
class Persegi extends Bentuk {
void gambar()
{System.out.println("Gambar persegi");}
}
public class Main {
public static void
main(String[] args)
{
Bentuk bentuk1 = new Lingkaran();
Bentuk bentuk2 = new Persegi();
bentuk1.gambar();
bentuk2.gambar();
}
}
Antarmuka Java
interface Suara
{void bersuara();}
class Anjing implements Suara {
public void bersuara()
{System.out.println("Guk guk");}
}
class Kucing implements Suara {
public void bersuara()
{System.out.println("Meong");}
}
public class Main {
public static void main(String[] args)
{
Suara hewan1 = new Anjing();
Suara hewan2 = new Kucing();
hewan1.bersuara();
hewan2.bersuara();
}
}
Penggunaan Class Abstrack dan Method Abstrak dan Contohnya
Ada suatu kondisi dimana harus mendefinisikan sebuah superclass guna mendeklarasikan struktur yang memberikan abstraksi tanpa menyediakan implementasi secara penuh dari setiap method. Terkadang programmer ingin menciptakan sebuah superclass yang hanya mendefinisikan gambaran umum yang dapat dibagikan (shared) terhadap sebuah subclass itu sendiri.// program Java
// mengilustrasikan konsep
// dari abstraksi.
abstract class Shape
{
String color;
/* method abstract */
abstract double area();
public abstract String toString();
// class abstract yang
// memiliki constructor.
public Shape(String color){
System.out.println("Constru"
+"ctor shape dipanggil");
this.color = color;}
/* method terpusat */
public String getColor() {
return color;}
}
class Circle extends Shape
{
double radius;
public Circle(String color,double radius){
/* memanggil constructor shape */
super(color);
System.out.println("Constru"
+"ctor circle dipanggil");
this.radius = radius;}
@Override
double area()
{return Math.PI * Math.pow(radius, 2);}
@Override
public String toString()
{return "Warna circle adalah "
+super.color
+"dan luas : "
+area();}
}
class Rectangle extends Shape
{
double length;
double width;
public Rectangle(String color,double length,double width){
// memanggil constructor shape
super(color);
System.out.println("Constru"
+"ctor rectangle dipanggil");
this.length = length;
this.width = width;}
@Override
double area()
{return length*width;}
@Override
public String toString()
{return "Warna rectangle"
+" adalah "
+super.color
+"dan luas : "
+area();}
}
public class Test
{
public static void main(String[] args)
{
Shape s1 = new Circle("Merah", 2.2);
Shape s2 = new Rectangle("Kuning", 2, 4);
System.out.println(s1.toString());
System.out.println(s2.toString());
}
}
Constructor rectangle dipanggil
Warna rectangle adalah Yellowdan luas : 8.0
Enkapsulasi vs Data Abstraksi:
- Enkapsulasi adalah mekanisme menyembunyikan data atau menyembunyikan informasi , sedangkan abstraksi adalah mekanisme yang menjelaskan rincian data yang disembunyikan (implementation hiding) tersebut.
- Enkapsulasi menggabungkan data dan method serta memberikan aksi terhadap data tersebut, sedangkan data abstraksi berkaitan dengan cara menampilkan interface kepada user dan menyembunyikan rincian dari implementasinya.
- Mengurangi kompleksitas dari tampilan berbagai hal, dimana abstraksi memungkinkan untuk fokus pada detail yang penting dan mengabaikan yang tidak penting, sehingga mengurangi kompleksitas kode.
- Menghindari duplikasi kode dan meningkatkan reusability.
- Dengan menyembunyikan detail implementasi, abstraksi membuat kode lebih mudah dimengerti dan dipelihara.
- Dengan membuat kelas abstrak atau antarmuka, maka dapat dihasilkan kode yang dapat digunakan kembali dalam berbagai konteks.
- Meningkatkan keamanan dari aplikasi atau program yang hanya menyediakan rincian penting untuk diperlihatkan kepada user.
- Menggunakan THIS Java dan Fungsinya
- Cara Menggunakan Method Overloading Java dan Fungsinya
- Cara Membuat Program Overriding Java dan Fungsinya
- Cara Menggunakan Overriding Java dan Fungsinya
- Cara Menggunakan Overloading Java dan Fungsinya
- PUBLIC STATIC VOID MAIN Java dan Fungsinya
- Overloading dan Overriding Static Java dan Fungsinya
6 komentar untuk "Menampilkan Komponen Penting Java Menggunakan Abstraksi"
Hubungi admin melalui Wa : +62-896-2414-6106
Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.
Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.
- Ikatlah Ilmu dengan Memostingkannya -
- Big things start from small things -
Apa yang dimaksud dengan proses abstraksi pada bahasa pemrograman Java?
BalasHapusAbstraksi merupakan proses menyembunyikan detail implementasi data dari akses pengguna, dimana hanya fungsionalitas yang akan diberikan atau dapat dibaca oleh pengguna tersebut. Dengan kata lain, pengguna atau user hanya akan mendapatkan informasi tetang apa yang akan dilakukan oleh object itu saja ketimbang bagaimana cara atau proses tersebut dapat dilakukan.
HapusApa tujuan dari penggunaan abstraksi pada bahasa pemrograman Java?
BalasHapusTujuan utama dari data abstraksi pada pemrograman Java adalah untuk menyembunyikan detail atau rincian data yang sifatnya tidak terlalu diperlukan untuk diketahui oleh pengguna.
HapusAbstraksi dapat memilih data dari sekumpulan yang lebih besar untuk menampilkan detail object yang relevan terhadap user. Dimana hal ini dapat membantu dalam pengurangan kompleksitas dan upaya dalam pembuatan program, dan sekaligus merupakan salah satu konsep penting pada OOP Java.
Pada bagian apa konsep abstraksi dapat diterapkan pada bahasa pemrograman Java?
BalasHapusPada Java, konsep abstraksi diterapkan pada penggunaan interface atau class abstract.
Hapus