Rumah  >  Artikel  >  Java  >  Apa yang boleh menjadi pengubah antara muka java

Apa yang boleh menjadi pengubah antara muka java

青灯夜游
青灯夜游asal
2023-01-04 13:04:093150semak imbas

Pengubah suai antara muka java boleh menjadi abstrak dan muktamad. Antara muka boleh difahami sebagai kelas khas Perbezaannya ialah ahli antara muka tidak mempunyai badan pelaksanaan dan terdiri daripada pemalar global dan kaedah abstrak awam secara lalai; dalam antara muka. Pemalar boleh ditakrifkan (dengan pengubahsuaian akhir, ia akan menjadi pemalar), jadi sifat antara muka adalah pemalar akhir statik awam secara lalai dan mesti diberikan nilai awal.

Apa yang boleh menjadi pengubah antara muka java

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi Java 8, komputer DELL G3.

Kelas abstrak ialah templat yang diabstrak daripada berbilang kelas Jika abstraksi ini dijalankan dengan lebih teliti, "kelas abstrak" yang lebih istimewa - antara muka (Antara Muka) boleh diekstrak. Antara muka adalah salah satu konsep yang paling penting dalam Java Ia boleh difahami sebagai kelas khas Perbezaannya ialah ahli antara muka tidak mempunyai badan pelaksanaan dan terdiri daripada pemalar global dan kaedah abstrak awam.

Tentukan antara muka

Kaedah takrifan antara muka Java pada asasnya sama seperti kelas, tetapi kata kunci yang digunakan dalam definisi antara muka ialah antara muka , sintaks definisi antara muka Formatnya adalah seperti berikut:

[public] interface interface_name [extends interface1_name[, interface2_name,…]] {
    // 接口体,其中可以包含定义常量和声明方法
    [public] [static] [final] type constant_name = value;    // 定义常量
    [public] [abstract] returnType method_name(parameter_list);    // 声明方法
}

Penerangan sintaks di atas adalah seperti berikut:

  • awam mewakili pengubah suai antara muka . Apabila tiada pengubah suai, pengubah suai lalai digunakan , pada masa ini, hak akses antara muka adalah terhad kepada pakej yang dimilikinya; antara muka. Nama antara muka harus menggunakan peraturan penamaan yang sama seperti nama kelas, iaitu, dari perspektif tatabahasa, nama antara muka hanya perlu pengecam undang-undang. Untuk mematuhi spesifikasi kebolehbacaan Java, nama antara muka hendaklah merupakan gabungan perkataan yang bermakna, dengan huruf pertama setiap perkataan ditulis dengan huruf besar, tanpa sebarang pemisah antara perkataan.

  • lanjutan mewakili hubungan warisan antara muka;

  • constant_name mewakili nama pembolehubah, yang biasanya statik dan muktamad; 🎜>
  • parameter_list mewakili senarai parameter , kaedah dalam antara muka tidak mempunyai badan kaedah.

  • Nota: Antara muka boleh mempunyai berbilang antara muka induk langsung, tetapi antara muka hanya boleh mewarisi antara muka, bukan kelas.

  • Pengubah suai antara muka java
  • Antara muka adalah sangat penting untuk menggambarkan keadaan, berikut adalah sedikit verbose:
  • (1) Antara muka digunakan untuk menerangkan semua perkhidmatan yang disediakan oleh sistem kepada dunia luar, jadi pemalar ahli dan kaedah dalam antara muka mestilah jenis awam untuk memastikan pengguna luar boleh mengaksesnya

    (2) Antara muka hanya menerangkan perkara yang boleh dilakukan oleh sistem, tetapi tidak menyatakan cara melakukannya, jadi kaedah dalam antara muka adalah kaedah abstrak
(3) Antara muka tidak melibatkan butiran berkaitan dengan mana-mana contoh tertentu, jadi antara muka Tiada pembina, ia tidak boleh dijadikan instantiated, tiada pembolehubah contoh, hanya pembolehubah statik; (4) Pembolehubah dalam antara muka adalah biasa kepada semua kelas pelaksanaan. Memandangkan ia dikongsi, ia mestilah tidak berubah , kerana perkara yang berubah tidak boleh dikira sebagai dikongsi. Oleh itu, pembolehubah adalah jenis tidak berubah (akhir), iaitu pemalar.

(5) Pembolehubah tidak boleh ditakrifkan dalam antara muka? Jika antara muka boleh menentukan pembolehubah, tetapi kaedah dalam antara muka adalah abstrak, sifat tidak boleh diubah suai melalui tingkah laku dalam antara muka. Sesetengah orang akan berkata, tidak mengapa, anda boleh mengubah suai sifat dalam antara muka melalui tingkah laku objek yang melaksanakan antara muka. Ini sudah tentu tiada masalah, tetapi pertimbangkan keadaan ini. Jika terdapat pembolehubah statik a dengan akses awam dalam antara muka A. Menurut semantik Java, kita boleh mengakses pembolehubah a tanpa menggunakan objek yang melaksanakan antara muka Kita boleh menukar nilai pembolehubah a dalam antara muka melalui A.a = xxx;. Sama seperti ini boleh dilakukan dalam kelas abstrak, semua objek yang melaksanakan antara muka A secara automatik akan mempunyai nilai yang berubah iaitu a, jika a ditukar di satu tempat, nilai a dalam semua objek ini juga akan mengikuti . Apakah perbezaan antara ini dan kelas abstrak Bagaimana untuk mencerminkan tahap abstraksi antara muka yang lebih tinggi Bagaimana untuk mencerminkan protokol bersatu yang disediakan oleh antara muka? Oleh itu, pembolehubah tidak boleh muncul dalam antara muka Jika terdapat pembolehubah, ia bercanggah dengan idea abstraksi bersatu yang disediakan oleh antara muka. Oleh itu, atribut dalam antara muka mestilah pemalar, yang hanya boleh dibaca dan tidak boleh diubah Hanya dengan cara ini atribut bersatu disediakan untuk objek yang melaksanakan antara muka.

Dalam istilah orang awam, jika anda fikir sesuatu perlu diubah, letakkannya dalam pelaksanaan anda sendiri dan bukan dalam antara muka Satu antara muka hanyalah abstraksi peringkat tinggi bagi atribut dan gelagat sesuatu jenis . Ditutup untuk pengubahsuaian dan terbuka untuk sambungan (pelaksanaan yang berbeza), antara muka adalah manifestasi prinsip tertutup terbuka.

Jadi: Kaedah lalai antara muka ialah ; ). Oleh itu, sifat antara muka ialah

pemalar secara lalai dan mesti diberikan nilai awal.

Nota: muktamad dan abstrak tidak boleh muncul pada masa yang sama.

Untuk lebih banyak pengetahuan berkaitan pengaturcaraan, sila layari: Pengajaran Pengaturcaraan! !

Atas ialah kandungan terperinci Apa yang boleh menjadi pengubah antara muka java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn