Perbedaan Antara AbstracKelas dan Antarmuka di Java

Perbedaan Utama Antara Otot PeruttracKelas dan Antarmuka di Java

  • Dalam Interface, sebuah kelas dapat mengimplementasikan beberapa antarmuka, sedangkan kelas hanya dapat mewarisi satu antarmuka.tracKelas t.
  • Dalam Interface tidak ada pengubah akses. Semua yang didefinisikan di dalam Interface diasumsikan memiliki pengubah publik, sedangkan AbstracKelas t dapat memiliki pengubah akses.
  • Antarmuka tidak dapat berisi bidang data, sedangkan abstracKelas t dapat memiliki field data.
  • Antarmuka membantu mendefinisikan kemampuan periferal suatu kelas, sedangkan kemampuan absoluttracKelas t mendefinisikan identitas suatu kelas.

Antarmuka vs AbstracKelas t di Java

Apa itu Abs?tracKelas t?

Kelas yang memiliki abstracKata kunci t dalam deklarasinya disebut abstracKelas t. AbstracKelas t seharusnya memiliki nol atau lebih nilai absolut.tracMetode-metode t. Yaitu, metode tanpa badan. Ia dapat memiliki beberapa metode konkret. AbstracKelas T memungkinkan Anda membuat cetak biru untuk kelas konkret. Namun, kelas yang mewarisi harus mengimplementasikan sifat-sifat absolutnya.tracMetode t. AbstracKelas t tidak dapat diinstansiasi.

Alasan Penting Menggunakan Antarmuka

  • Antarmuka digunakan untuk mencapai abstracproduksi.
  • Dirancang untuk mendukung resolusi metode dinamis pada waktu proses
  • Ini membantu Anda mencapai kopling yang longgar.
  • Memungkinkan Anda memisahkan definisi metode dari hierarki warisan

Alasan Penting Menggunakan Otot PeruttracKelas t

  • AbstracKelas t menawarkan fungsionalitas default untuk subkelasnya.
  • Menyediakan templat untuk kelas spesifik di masa depan
  • Membantu Anda menentukan antarmuka umum untuk subkelasnya
  • AbstracKelas t memungkinkan penggunaan kembali kode.

Apa itu Antarmuka?

Antarmuka (interface) adalah cetak biru yang dapat digunakan untuk mengimplementasikan sebuah kelas. Antarmuka tidak berisi metode konkret (metode yang memiliki kode). Semua metode dalam sebuah antarmuka bersifat abstrak.tracSebuah antarmuka tidak dapat diinstansiasi. Namun, kelas yang mengimplementasikan antarmuka dapat diinstansiasi. Antarmuka tidak pernah berisi variabel instan, tetapi dapat berisi variabel publik statis final (yaitu, variabel kelas konstan).

Perbedaan antara Interface dan AbstracKelas t di Java

Otot peruttracKelas memungkinkan Anda membuat fungsionalitas yang dapat diimplementasikan atau ditimpa oleh subkelas, sedangkan antarmuka hanya memungkinkan Anda untuk menyatakan fungsionalitas tetapi tidak untuk mengimplementasikannya. Sebuah kelas hanya dapat memperluas satu atribut.tracSuatu kelas dapat mengimplementasikan beberapa antarmuka, sementara kelas lain hanya dapat mengimplementasikan antarmuka tertentu.

Parameter Teknis Antarmuka Abstrackelas t
Kecepatan Lambat Cepat
Beberapa Warisan Menerapkan beberapa Antarmuka Hanya satu abstrackelas t
Structure Abstracmetode t Abstracmetode konkret
Kapan harus digunakan Peningkatan di masa depan Untuk menghindari kemerdekaan
Warisan/ Implementasi Sebuah Kelas dapat mengimplementasikan banyak antarmuka Kelas tersebut hanya dapat mewarisi satu Abs.tracKelas t
Implementasi Default Saat menambahkan hal-hal baru ke antarmuka, menemukan semua pelaksana dan mengimplementasikan hal-hal yang baru ditentukan merupakan mimpi buruk. Dalam kasus AbstracPada kelas t, Anda dapat memanfaatkan implementasi default.
Akses Pengubah Antarmuka tidak memiliki pengubah akses. Segala sesuatu yang didefinisikan di dalam antarmuka diasumsikan sebagai pengubah publik. AbstracKelas t 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 serupa memiliki perilaku yang sama.
Bidang data antarmuka tidak dapat berisi bidang data. kelas dapat memiliki bidang data.
Default Warisan Berganda Sebuah kelas dapat mengimplementasikan banyak antarmuka. Suatu kelas hanya mewarisi satu abs.trackelas t.
Organisasi Antarmuka adalah absoluttracsehingga tidak dapat memberikan kode apa pun. Otot peruttracKelas t dapat memberikan kode default lengkap yang harus ditimpa.
Penggunaan pengubah Akses Anda tidak dapat menggunakan pengubah akses untuk metode, properti, dll. Anda bisa menggunakan otot perut.trackelas t yang berisi pengubah akses.
penggunaan Antarmuka membantu menentukan kemampuan periferal suatu kelas. Otot peruttracKelas t mendefinisikan identitas suatu kelas.
Bidang yang ditentukan Tidak ada bidang yang dapat ditentukan Otot peruttracKelas t memungkinkan Anda untuk mendefinisikan baik field maupun konstanta.
Warisan Sebuah antarmuka dapat mewarisi banyak antarmuka tetapi tidak dapat mewarisi satu kelas. Otot peruttracKelas t dapat mewarisi sebuah kelas dan beberapa antarmuka.
Konstruktor atau destruktor Antarmuka tidak dapat mendeklarasikan konstruktor atau destruktor. Otot peruttracKelas t dapat mendeklarasikan konstruktor dan destruktor.
Batasan Ekstensi Itu dapat memperluas sejumlah antarmuka. Ini hanya dapat memperpanjang satu kelas atau satu abs.trackelas t pada satu waktu.
Abstrackata kunci t Dalam abstracKata kunci `interface` bersifat opsional untuk mendeklarasikan sebuah metode sebagai antarmuka absolut.tract. Dalam abstrackelas t, abstracKata kunci `t` wajib digunakan untuk mendeklarasikan sebuah metode sebagai absolut.tract.
Jenis kelas Suatu antarmuka hanya dapat memiliki akses publik.tracmetode t. Otot peruttracKelas t memiliki perlindungan dan akses publik.tracmetode t.

Contoh kode untuk Interface dan AbstracKelas t di Java

Berikut adalah contoh kode untuk membuat antarmuka dan nilai absolut.trackelas t di Java

Sintaks Antarmuka

interface name{
//methods
}

Java Contoh Antarmuka:

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();
    }
}

AbstracSintaks Kelas t

abstract class name{
    // code
}

AbstracContoh kelas t:

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));
    }
}

Ringkaslah postingan ini dengan: