Install Web App

Belajar OOP Bahasa Pemrogaman Java #25 | Pengertian Abstract Class

profil-penulis

Achmad Yoga Bactiar Teguh Suseno

10 Mei 2023

Pengertian dan Konsep Abstract Class pada Bahasa Pemrograman Java

Abstract class (kelas abstrak) adalah salah satu konsep yang kuat dalam pemrograman berorientasi objek (OOP) yang digunakan dalam bahasa pemrograman Java. Abstract class digunakan sebagai kerangka dasar untuk kelas-kelas turunan, dan mereka tidak dapat diinstansiasi sendiri. Dalam artikel ini, kita akan membahas pengertian dan konsep abstract class dalam Java, serta memberikan contoh penggunaan dan outputnya.

Pengertian Abstract Class

Abstract class adalah kelas yang tidak dapat diinstansiasi (tidak dapat membuat objek dari kelas tersebut) dan sering digunakan sebagai kelas dasar (superclass) untuk satu atau lebih kelas turunan (subclass). Abstract class dapat memiliki metode yang memiliki implementasi, serta metode yang dideklarasikan tetapi tidak memiliki implementasi. Metode-metode tersebut harus diimplementasikan oleh kelas-kelas turunan.

Konsep Abstract Class dalam Java

Konsep abstract class dalam Java dapat diilustrasikan dengan beberapa poin penting:

  1. Tidak Dapat Diinstansiasi: Abstract class tidak dapat diinstansiasi, artinya Anda tidak dapat membuat objek langsung dari abstract class tersebut. Ini karena abstract class adalah kerangka kerja yang umum untuk kelas turunan.

  2. Metode Abstract: Abstract class dapat memiliki metode yang dideklarasikan (tanpa implementasi). Metode-metode tersebut harus diimplementasikan oleh kelas-kelas turunan. Metode abstract dideklarasikan dengan kata kunci abstract.

  3. Metode Biasa: Abstract class juga dapat memiliki metode biasa dengan implementasi. Ini berarti abstract class dapat memiliki metode yang dapat digunakan langsung oleh kelas-kelas turunannya.

  4. Inheritance: Abstract class digunakan sebagai kelas dasar untuk kelas-kelas turunan. Setiap kelas turunan harus mengimplementasikan semua metode abstract yang dideklarasikan dalam abstract class.

Contoh Penggunaan Abstract Class

Berikut adalah contoh sederhana penggunaan abstract class dalam Java:

// Abstract class
abstract class Shape {
    // Metode abstract (tanpa implementasi)
    abstract double calculateArea();

    // Metode biasa dengan implementasi
    void display() {
        System.out.println("Ini adalah bentuk.");
    }
}

// Kelas turunan pertama
class Circle extends Shape {
    double radius;

    Circle(double radius) {
        this.radius = radius;
    }

    // Implementasi metode abstract
    double calculateArea() {
        return Math.PI * radius * radius;
    }
}

// Kelas turunan kedua
class Rectangle extends Shape {
    double length;
    double width;

    Rectangle(double length, double width) {
        this.length = length;
        this.width = width;
    }

    // Implementasi metode abstract
    double calculateArea() {
        return length * width;
    }
}

public class Main {
    public static void main(String[] args) {
        // Membuat objek dari kelas turunan
        Circle circle = new Circle(5);
        Rectangle rectangle = new Rectangle(4, 6);

        // Memanggil metode
        circle.display();
        System.out.println("Luas Lingkaran: " + circle.calculateArea());

        rectangle.display();
        System.out.println("Luas Persegi Panjang: " + rectangle.calculateArea());
    }
}

Dalam contoh di atas, kita memiliki abstract class Shape yang memiliki metode abstract calculateArea() dan metode biasa display(). Kemudian, kita memiliki dua kelas turunan, yaitu Circle dan Rectangle, yang mengimplementasikan metode calculateArea() sesuai dengan jenis bentuk yang mereka wakili.

Kita juga membuat objek dari kelas turunan (Circle dan Rectangle) dan memanggil metode display() dan calculateArea().

Output

Ini adalah bentuk.
Luas Lingkaran: 78.53981633974483
Ini adalah bentuk.
Luas Persegi Panjang: 24.0

Output di atas menunjukkan bahwa kita berhasil menggunakan abstract class Shape sebagai kerangka kerja untuk kelas-kelas turunan Circle dan Rectangle, dan metode abstract calculateArea() diimplementasikan sesuai dengan jenis bentuk yang bersangkutan. Dengan ini, kita dapat memanfaatkan konsep pewarisan dan polymorphism untuk memodelkan hierarki kelas yang lebih kompleks dalam aplikasi Java.

Artikel Lainnya Dengan Kategori Terkait :


1. Belajar Bahasa Pemrogaman Java #01 | Apa Itu Java dan Sejarah Singkatnya

2. Belajar Bahasa Pemrogaman Java #02 | Pengertian dan Keunggulan Java

3. Belajar Bahasa Pemrogaman Java #03 | Pengertian JVM (Java Virtual Machine) dan fungsinya

4. Belajar Bahasa Pemrogaman Java #04 | Pengertian JRE dan JDK

5. Belajar Bahasa Pemrogaman Java #05 | Cara Menginstall Java JDK (Java Development Kit)

6. Belajar Bahasa Pemrogaman Java #06 | Mengatur Setting Path untuk Java JDK

7. Belajar Bahasa Pemrogaman Java #07 | Cara Menjalankan kode Program Java

8. Belajar Bahasa Pemrogaman Java #08 | Melihat Pesan Error Kode Program Java

9. Belajar Bahasa Pemrogaman Java #09 | Cara Menjalankan Java dari Notepad++

10. Belajar Bahasa Pemrogaman Java #10 | Struktur Dasar Kode Program Bahasa Pemrograman Java

11. Belajar Bahasa Pemrogaman Java #11 | Aturan Dasar Penulisan Kode Java

12. Belajar Bahasa Pemrogaman Java #12 | Pengertian dan Cara Penulisan Variabel Bahasa Java

13. Belajar Bahasa Pemrogaman Java #13 | Pengertian dan Cara Pembuatan Konstanta Bahasa Java

14. Belajar Bahasa Pemrogaman Java #14 | Cara Menampilkan Teks di Bahasa Java

15. Belajar Bahasa Pemrogaman Java #15 | Jenis-Jenis Tipe Data dalam Bahasa Java

16. Belajar Bahasa Pemrogaman Java #16 | Tipe Data Integer Bahasa Pemrograman Java

17. Belajar Bahasa Pemrogaman Java #17 | Tipe Data Float dan Double Bahasa Pemrograman Java

18. Belajar Bahasa Pemrogaman Java #18 | Tipe Data Boolean Bahasa Pemrograman Java

19. Belajar Bahasa Pemrogaman Java #19 | Tipe Data Char Bahasa Pemrograman Java

20. Belajar Bahasa Pemrogaman Java #20 | Tipe Data String Bahasa Pemrograman Java

21. Belajar Bahasa Pemrogaman Java #21 | Tipe Data Array

22. Belajar Bahasa Pemrogaman Java #22 | Jenis-jenis Operator

23. Belajar Bahasa Pemrogaman Java #23 | Jenis-jenis Operator Aritmatika

24. Belajar Bahasa Pemrogaman Java #24 | Cara Menampilkan Teks

25. Belajar Bahasa Pemrogaman Java #25 | Jenis-jenis Operator Perbandingan / Relasional

26. Belajar Bahasa Pemrogaman Java #26 | Jenis-jenis Operator Logika

27. Belajar Bahasa Pemrogaman Java #27 | Jenis-jenis Operator Bitwise

28. Belajar Bahasa Pemrogaman Java #28 | Jenis-jenis Operator Assignment

29. Belajar Bahasa Pemrogaman Java #29 | Tipe Percabangan Kondisi IF

30. Belajar Bahasa Pemrogaman Java #30 | Percabangan Kondisi IF ELSE

31. Belajar Bahasa Pemrogaman Java #31 | Percabangan Kondisi IF ELSE IF

32. Belajar Bahasa Pemrogaman Java #32 | Percabangan Kondisi Switch Case Bahasa Java

33. Belajar Bahasa Pemrogaman Java #33 | Perulangan FOR Bahasa Java

34. Belajar Bahasa Pemrogaman Java #34 | Perulangan WHILE Bahasa Java

35. Belajar Bahasa Pemrogaman Java #35 | Perulangan DO WHILE Bahasa Java

36. Belajar Bahasa Pemrogaman Java #36 | Fungsi dan Pengertian Perintah BREAK

37. Belajar Bahasa Pemrogaman Java #37 | Fungsi dan Pengertian Perintah CONTINUE

38. Belajar Bahasa Pemrogaman Java #38 | Jenis-jenis Operator Assignment

39. Belajar Bahasa Pemrogaman Java #39 | Pengertian Function (Fungsi) Bahasa Java

40. Belajar Bahasa Pemrogaman Java #40 | Pengertian Parameter dan Argumen Fungsi Java

41. Belajar Bahasa Pemrogaman Java #41 | Fungsi Perintah Return dalam Function

42. Belajar Bahasa Pemrogaman Java #42 | Pengertian Variable Scope

43. Belajar OOP Bahasa Pemrogaman Java #01 | Pengertian Pemrograman Berorientasi Objek

44. Belajar OOP Bahasa Pemrogaman Java #02 | Pengertian Class, Object, Property dan Method

45. Belajar OOP Bahasa Pemrogaman Java #03 | Cara Membuat Class dan Object

46. Belajar OOP Bahasa Pemrogaman Java #04 | Istilah Property

47. Belajar OOP Bahasa Pemrogaman Java #05 | Cara Membuat Method Bahasa Java

48. Belajar OOP Bahasa Pemrogaman Java #06 | Pengertian Constructor

49. Belajar OOP Bahasa Pemrogaman Java #07 | Cara Membuat Pewarisan Class (Inheritance)

50. Belajar OOP Bahasa Pemrogaman Java #08 | Cara Membuat Multiple Inheritance

51. Belajar OOP Bahasa Pemrogaman Java #09 | Pengertian Method Overidding

52. Belajar OOP Bahasa Pemrogaman Java #10 | Pengertian Method Overloading

53. Belajar OOP Bahasa Pemrogaman Java #11 | Pengertian dan Fungsi Perintah super

54. Belajar OOP Bahasa Pemrogaman Java #12 | Pengertian dan Fungsi Perintah this

55. Belajar OOP Bahasa Pemrogaman Java #13 | Pengertian dan Fungsi Perintah static

56. Belajar OOP Bahasa Pemrogaman Java #14 | Pengertian dan Fungsi Perintah Final

57. Belajar OOP Bahasa Pemrogaman Java #15 | Cara Membuat Package dan Proses Import

58. Belajar OOP Bahasa Pemrogaman Java #16 | Cara Mengakses Class Pada Package Yang Sama

59. Belajar OOP Bahasa Pemrogaman Java #17 | Memahami Batasan Hak Akses (access modifier)

60. Belajar OOP Bahasa Pemrogaman Java #18 | Batasan Hak Akses Private

61. Belajar OOP Bahasa Pemrogaman Java #19 | Batasan Hak Akses Public

62. Belajar OOP Bahasa Pemrogaman Java #20 | Batasan Hak Akses Default

63. Belajar OOP Bahasa Pemrogaman Java #21 | Batasan Hak Akses Protected

64. Belajar OOP Bahasa Pemrogaman Java #22 | Membuat Setter dan Getter

65. Belajar OOP Bahasa Pemrogaman Java #23 | Pengertian Encapsulation Java

66. Belajar OOP Bahasa Pemrogaman Java #24 | Pengertian Polymorphism Java

67. Belajar OOP Bahasa Pemrogaman Java #25 | Pengertian Abstract Class

68. Belajar OOP Bahasa Pemrogaman Java #26 | Pengertian Interface Class

69. Latihan Kode Bahasa Pemrogaman Java #27 | Pola Persegi Bintang

70. Latihan Kode Bahasa Pemrogaman Java #28 | Pola Persegi Panjang Bintang

71. Latihan Kode Bahasa Pemrogaman Java #29 | Pola Segitiga

72. Latihan Kode Bahasa Pemrogaman Java #30 | Menghitung Luas Lingkaran

73. Latihan Kode Bahasa Pemrogaman Java #31 | Menghitung Luas Belah Ketupat

74. Latihan Kode Bahasa Pemrogaman Java #32 | Konversi Suhu Celcius

75. Latihan Kode Bahasa Pemrogaman Java #33 | Konversi Desimal ke Biner

76. Latihan Kode Bahasa Pemrogaman Java #34 | Konversi Biner ke Desimal

77. Latihan Kode Bahasa Pemrogaman Java #35 | Cek Bilangan Prima

78. Latihan Kode Bahasa Pemrogaman Java #36 | Mencari Akar Persamaan Kuadrat

79. Latihan Kode Bahasa Pemrogaman Java #37 | Menghitung Gaji Karyawan

80. Latihan Kode Bahasa Pemrogaman Java #38 | Membuat Menu Berulang

81. Latihan Kode Bahasa Pemrogaman Java #39 | Menampilkan Biodata Mahasiswa

82. Latihan Kode Bahasa Pemrogaman Java #40 | Menghitung Diskon Potongan Harga

83. Latihan Kode Bahasa Pemrogaman Java #41 | Cek Tahun Kabisat

84. Latihan Kode Bahasa Pemrogaman Java #42 | Menentukan Nama Hari

85. Latihan Kode Bahasa Pemrogaman Java #43 | Menentukan Nama Bulan

86. Latihan Kode Bahasa Pemrogaman Java #44 | Menghitung Jumlah Huruf Vokal

87. Latihan Kode Bahasa Pemrogaman Java #45 | Penjumlahan Array

88. Latihan Kode Bahasa Pemrogaman Java #46 | Pencarian Data Array (Searching)

89. Latihan Kode Bahasa Pemrogaman Java #47 | Mencari Nilai Terbesar Array

90. Latihan Kode Bahasa Pemrogaman Java #48 | Mencari Nilai Terkecil Array

91. Memahami Konsep Inheritance (Pewarisan) Dalam Java

92. Mengenal Encapsulation dalam Java

93. Mengenal Package dalam Java

94. Mengenal Polymorphisme Pada Java

Masuk Terlebih dahulu untuk berkomentar

Paling baru
Lihat Lainnya