0Pricing
Java Academy · Pelajaran

Antarmuka (Pengantar dan Perbandingan)

Definisikan antarmuka, implementasikan dalam kelas, dan bandingkan dengan kelas abstrak. Pelajari metode bawaan dan beberapa implementasi.

Antarmuka (Pengantar dan Perbandingan) adalah pelajaran Java Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 3. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Java Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Java Academy mencakup 3 pelajaran total.

Apa itu antarmuka?

Antarmuka: kontrak yang mencantumkan tanda tangan metode yang harus disediakan sebuah kelas. Gunakan untuk menjelaskan kemampuan, seperti Drivable atau Printable, tanpa menetapkan hierarki kelas.

Kode: menerapkan antarmuka

Kelas menerapkan antarmuka untuk menjanjikan perilaku tertentu. Anda dapat merujuk objek berdasarkan jenis antarmukanya dan memanggil metode yang dideklarasikan.

public class Main {
  // Interface that declares a capability
  static interface Drivable {
    void drive(); // method to implement
  }

  // A class implements the interface
  static class Car implements Drivable {
    public void drive() {
      System.out.println("Car is driving");
    }
  }

  public static void main(String[] args) {
    Drivable d = new Car(); // upcast to interface
    d.drive();              // runs Car's method
  }
}

Antarmuka dibandingkan dengan kelas abstract

Kelas abstract = hubungan “merupakan” dengan kode bersama. Antarmuka = kemampuan “dapat melakukan”. Sebuah kelas dapat memperluas satu kelas, tetapi menerapkan banyak antarmuka, sehingga rancangan tetap fleksibel dan menghindari hierarki yang terlalu dalam.

Kode: metode bawaan

Antarmuka dapat memiliki metode bawaan yang berisi kode. Kelas yang menerapkan antarmuka tersebut otomatis mewarisi perilaku sederhana itu.

public class Main {
  // Interface with a default method (has a body)
  static interface Greeter {
    void greet(String name);
    default void sayBye() { // default provides a reusable tiny implementation
      System.out.println("Bye");
    }
  }

  static class SimpleGreeter implements Greeter {
    public void greet(String name) {
      System.out.println("Hello, " + name);
    }
  }

  public static void main(String[] args) {
    Greeter g = new SimpleGreeter();
    g.greet("Ada");
    g.sayBye(); // default method from the interface
  }
}

Beberapa antarmuka

Sebuah kelas dapat menerapkan beberapa antarmuka sekaligus (misalnya, Drivable dan Maintainable). Ini memodelkan kemampuan tanpa memaksakan rantai kelas induk yang tetap.

Kode: beberapa antarmuka

Satu kelas menerapkan kedua antarmuka. Anda dapat memperlakukannya sebagai Drivable, Maintainable, atau jenis konkretnya, bergantung pada konteks.

public class Main {
  static interface Drivable { void drive(); }
  static interface Maintainable { void maintain(); }

  static class ServiceCar implements Drivable, Maintainable {
    public void drive() { System.out.println("ServiceCar driving"); }
    public void maintain() { System.out.println("ServiceCar maintenance"); }
  }

  public static void main(String[] args) {
    ServiceCar s = new ServiceCar();
    s.drive();
    s.maintain();
  }
}

Pemeriksaan antarmuka

Pemeriksaan singkat: Pernyataan mana tentang antarmuka di Java yang benar?

Ringkasan

Ringkasan: Antarmuka mendefinisikan kontrak perilaku; kelas menerapkannya. Gunakan bawaan untuk kode bersama yang sangat kecil dan gabungkan beberapa kemampuan dalam satu kelas bila diperlukan.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Antarmuka (Pengantar dan Perbandingan)” gratis?

Ya — teks lengkap “Antarmuka (Pengantar dan Perbandingan)” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Java Academy, upgrade ke CoddyKit PRO. Kursus Java Academy mencakup 3 pelajaran total.

Apa yang akan aku pelajari di “Antarmuka (Pengantar dan Perbandingan)”?

Definisikan antarmuka, implementasikan dalam kelas, dan bandingkan dengan kelas abstrak. Pelajari metode bawaan dan beberapa implementasi. Kamu berlatih Java Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Java Academy?

Tidak diperlukan pengalaman sebelumnya. Java Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 3.

Berapa lama pelajaran “Antarmuka (Pengantar dan Perbandingan)” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Java Academy ini?

Ya. Setiap pelajaran Java Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Kelas Abstrak
  2. Antarmuka (Pengantar dan Perbandingan)
  3. Casting Naik/Turun dan instanceof
← Kembali ke Java Academy