Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Antarmuka vs Kelas Abstrak di Jawa:Apa Perbedaannya?

Apa itu Antarmuka?

Antarmuka adalah cetak biru yang dapat digunakan untuk mengimplementasikan kelas. Antarmuka tidak mengandung metode konkret (metode yang memiliki kode). Semua metode antarmuka adalah metode abstrak.

Antarmuka tidak dapat dipakai. Namun, kelas yang mengimplementasikan antarmuka dapat dipakai. Antarmuka tidak pernah berisi variabel instan tetapi, mereka dapat berisi variabel final statis publik (yaitu, variabel kelas konstan)

Apa itu Kelas Abstrak?

Kelas yang memiliki kata kunci abstrak dalam deklarasinya disebut kelas abstrak. Kelas abstrak harus memiliki setidaknya satu metode abstrak. , yaitu, metode tanpa badan. Ini dapat memiliki beberapa metode konkret.

Kelas abstrak memungkinkan Anda membuat cetak biru untuk kelas konkret. Tetapi kelas yang mewarisi harus mengimplementasikan metode abstrak.

Kelas abstrak tidak dapat dibuat instance-nya.

Alasan Penting Untuk Menggunakan Antarmuka

Alasan Penting Untuk Menggunakan Kelas Abstrak

Antarmuka Vs. Kelas Abstrak

Kelas abstrak memungkinkan Anda untuk membuat fungsionalitas yang dapat diimplementasikan atau ditimpa oleh subkelas sedangkan antarmuka hanya mengizinkan Anda untuk menyatakan fungsionalitas tetapi tidak mengimplementasikannya. Kelas hanya dapat memperluas satu kelas abstrak sementara kelas dapat mengimplementasikan beberapa antarmuka.

Parameter Antarmuka Kelas abstrak
Kecepatan Lambat Cepat
Banyak Warisan Menerapkan beberapa Antarmuka Hanya satu kelas abstrak
Struktur Metode abstrak Metode abstrak &konkret
Kapan harus digunakan Peningkatan di masa mendatang Untuk menghindari kemerdekaan
Warisan/ Implementasi Sebuah Kelas dapat mengimplementasikan banyak antarmuka Kelas hanya dapat mewarisi satu Kelas Abstrak
Penerapan Default Sambil menambahkan hal-hal baru ke antarmuka, adalah mimpi buruk untuk menemukan semua pelaksana dan mengimplementasikan hal-hal yang baru didefinisikan. Dalam hal Kelas Abstrak, Anda dapat memanfaatkan implementasi default.
Pengubah Akses Antarmuka tidak memiliki pengubah akses. Semua yang didefinisikan di dalam antarmuka diasumsikan sebagai pengubah publik. Kelas Abstrak dapat memiliki pengubah akses.
Kapan harus digunakan Lebih baik menggunakan antarmuka ketika berbagai implementasi hanya berbagi tanda tangan metode. Hirarki polimorfik tipe nilai. Ini harus digunakan ketika berbagai implementasi dari jenis yang sama memiliki perilaku yang sama.
Bidang data antarmuka tidak boleh berisi bidang data. kelas dapat memiliki bidang data.
Default Warisan Banyak Sebuah kelas dapat mengimplementasikan banyak antarmuka. Sebuah kelas hanya mewarisi satu kelas abstrak.
Implementasi Antarmuka bersifat abstrak sehingga tidak dapat memberikan kode apa pun. Sebuah kelas abstrak dapat memberikan kode default lengkap yang harus diganti.
Penggunaan pengubah Access Anda tidak dapat menggunakan pengubah akses untuk metode, properti, dll. Anda dapat menggunakan kelas abstrak yang berisi pengubah akses.
Penggunaan Antarmuka membantu mendefinisikan kemampuan periferal suatu kelas. Sebuah kelas abstrak mendefinisikan identitas sebuah kelas.
Bidang yang ditentukan Tidak ada bidang yang dapat ditentukan Kelas abstrak memungkinkan Anda untuk mendefinisikan bidang dan konstanta
Warisan Sebuah antarmuka dapat mewarisi beberapa antarmuka tetapi tidak dapat mewarisi sebuah kelas. Sebuah kelas abstrak dapat mewarisi satu kelas dan beberapa antarmuka.
Konstruktor atau perusak Antarmuka tidak dapat mendeklarasikan konstruktor atau destruktor. Sebuah kelas abstrak dapat mendeklarasikan konstruktor dan destruktor.
Batas Ekstensi Ini dapat memperluas sejumlah antarmuka. Itu hanya dapat memperluas satu kelas atau satu kelas abstrak pada satu waktu.
Kata kunci abstrak Dalam kata kunci antarmuka abstrak, adalah opsional untuk mendeklarasikan metode sebagai abstrak. Dalam kelas abstrak, kata kunci abstrak wajib untuk mendeklarasikan metode sebagai abstrak.
Jenis kelas Sebuah antarmuka hanya dapat memiliki metode abstrak publik. Sebuah kelas abstrak memiliki metode abstrak yang dilindungi dan publik.

Contoh kode Antarmuka dan Kelas Abstrak di Java

Berikut ini adalah contoh kode untuk membuat antarmuka dan kelas abstrak di Java

Sintaks Antarmuka

interface name{
//methods
}

Contoh Antarmuka Java:

interface Pet {
    public void test();
}
class Dog implements Pet {
    public void test() {
        System.out.println("Interface Method Implemented");
    }
    public static void main(String args[]) {
        Pet p = new Dog();
        p.test();
    }
}

Sintaks Kelas Abstrak

abstract class name{
    // code
}

Contoh kelas abstrak:

abstract class Shape {
    int b = 20;
    abstract public void calculateArea();
}

public class Rectangle extends Shape {
    public static void main(String args[]) {
        Rectangle obj = new Rectangle();
        obj.b = 200;
        obj.calculateArea();
    }
    public void calculateArea() {
        System.out.println("Area is " + (b * b));
    }
}

java

  1. Pengelasan Forehand vs Pengelasan Backhand:Apa Bedanya?
  2. Besi vs Baja:Apa Bedanya?
  3. Kuku Potong vs Kawat:Apa Bedanya?
  4. Pemotongan Plasma vs Laser:Apa Bedanya?
  5. Menghadapi Bubut vs Penggilingan:Apa Bedanya?
  6. Penggilingan vs Penggilingan:Apa Bedanya?
  7. Kelas Abstrak Java dan Metode Abstrak
  8. Antarmuka Jawa
  9. Java - Abstraksi
  10. Java - Antarmuka