JavaRush /Blog Java /Random-MS /Antara muka di Jawa
vinsler
Tahap

Antara muka di Jawa

Diterbitkan dalam kumpulan
Saya seorang pencerita yang buruk jika saya tidak mempunyai matlamat untuk menerangkan sesuatu yang tidak dapat difahami kepada seseorang dengan permintaan tertentu, jadi saya memahami perkara yang mudah, dan untuk satu perkara saya akan menulis tentangnya di sini. Saya tidak mengikuti contoh pengajaran JavaRush untuk mula-mula bertanya soalan dan kemudian memberitahu anda cara melakukannya. Saya seorang penyokong memberitahu pertama, dan kemudian bertanya, seperti memberitahu, pertama menunjukkan, dan kemudian menjelaskan.
Antara muka dalam Java - 1
BS: Tindakan == tingkah laku, ambil mereka sebagai sinonim, tindakan hanya difahami dengan betul, ia sentiasa sesuatu yang aktif, dan tingkah laku mungkin tidak menunjukkan apa-apa.

antara muka - antara muka

Apakah ini? Contoh penyenaraian antara muka (dengan generik):
public interface Store<T, ID> {
    void add(T t);
    void update(T t, ID i);
    void delete(ID i);
    T findOne(ID i);
    List<T> findAll();
}
Crud biasa (daripada CRUD: Buat, Baca, Kemas Kini, Padam) antara muka. Jangan risau, semuanya agak mudah. Antara muka ini bermakna bekerja dengan banyak pangkalan data adalah berdasarkan prinsip berikut: anda perlu menambah rekod, mengemas kini rekod, memadam dan mencari semua rekod. Anda akan menemui ini 100 kali lagi dan menulis sendiri antara muka yang hampir sama dengan bilangan kali yang sama. Ia ditetapkan awam kerana ia mesti dilaksanakan oleh kelas. Apakah yang dimaksudkan untuk dilaksanakan oleh kelas ? Segala-galanya sangat mudah: ia mesti menerangkan semua kaedah antara muka. Contoh termudah pelaksanaan dalam kelas:
void add (T t) {
	bookstore.add(t);
}
Daripada T t, generik tertentu akan digantikan. Secara ringkasnya, ini ialah JENIS pembolehubah, itulah sebabnya ia paling kerap dilambangkan sebagai T = Jenis. Dalam contoh kami, katakan ia mungkin seperti ini:
void add (Book book) {
	bookstore.add(book);
}
Sememangnya, sebagai ganti buku Buku anda boleh menggantikan mana-mana pembolehubah yang anda perlukan untuk pelaksanaan anda. Untuk memahami, anda boleh bayangkan secara teori bahawa T = Object, dan kerana dalam Java semuanya adalah Object, anda juga boleh menentukan mana-mana kelas/pembolehubah anda di sana. Satu-satunya masalah akan timbul kemudian - pengecualian jika kelas adalah sifar, dsb. Dalam perkataannya sendiri, ia adalah struktur program tertentu yang mentakrifkan hubungan antara objek dengan membahagikannya kepada bahagian tingkah laku tertentu. Tujuan antara muka adalah untuk menentukan fungsi untuk pelaksanaan oleh kelas. Iaitu, penerangan tentang tandatangan kaedah. Di dalam antara muka terdapat nama kaedah yang mengembalikan dan nilai input, dan itu sahaja. Nah, anda masih boleh menetapkan beberapa pembolehubah di sana, tetapi ia serta-merta menjadi akhir statik awam secara tersirat, dan boleh diakses dari mana-mana bahagian program. Antara muka menerangkan tindakan, dan oleh itu tindakan yang sama ini terkandung di dalamnya, i.e. fungsi atau kaedah. Mengapa ini perlu? Apakah yang dipermudahkan ini atau apakah kelebihan yang diberikannya? Memudahkan penerangan tentang tindakan dan tingkah laku. Kami mengatakan apa yang perlu dilakukan, tetapi setiap kelas melaksanakan cara melakukannya sendiri. Menjimatkan masa untuk projek besar. Antara muka dicipta dalam situasi di mana kita tahu kita perlu melaksanakan beberapa tugas, tetapi cara melakukannya mungkin berbeza-beza. Antara muka menerangkan nama tindakan - ini hanyalah arah beberapa abstraksi. Walaupun mungkin terdapat antara muka tanpa kaedah dan medan, seperti penanda seperti Boleh Diklon, Jauh, dsb. Mari kita ambil contoh kereta kegemaran semua orang. Antara muka di dalamnya akan menerangkan kemungkinan tindakan kereta, memutar stereng atau arah pergerakan, peningkatan kelajuan, baki petrol, dsb. Iaitu, tindakan yang sama yang boleh dilakukan oleh mana-mana kereta. Dalam erti kata lain, kita turun ke dalam hutan kemerosotan ke tahap paling rendah penciptaan kereta pertama dan dengan otak kita sendiri kita memikirkan bagaimana ia dicipta dan apa yang ada padanya. Sememangnya, kami menerangkan ini secara abstrak dan hanya untuk tindakan. Apakah yang dimiliki oleh kereta pertama itu? Adakah terdapat stereng? Ia adalah, yang bermaksud ia membelok ke suatu tempat, arah stereng/pergerakan. Adakah terdapat roda? Ya, itu bermakna saya memandu pada kelajuan tertentu, perubahan dalam kelajuan. Itulah keseluruhan antara muka. Tetapi secara umum, antara muka dicipta untuk beberapa pelaksanaan tindakan tertentu. Itu. kami menulis program untuk program yang lebih khusus daripada apa-apa lagi yang anda boleh fikirkan. Oleh itu, antara muka itu sendiri akan mengandungi kaedah yang lebih jelas dan khusus. Sudah tentu mereka akan menjadi abstrak yang mungkin. Antara muka boleh diwarisi antara satu sama lain sebagai kelas.
interface MyInterface extends NotMyinterface;
Antara muka dilaksanakan dalam kelas. Anda boleh melaksanakan seberapa banyak antara muka yang anda suka. Berbeza dengan harta pusaka, warisi daripada satu sahaja.
class NewClass extends OldClass implements MyInterface, NotMyinterface;
Itu. kami menghasilkan beberapa tindakan, memberi mereka nama, memasukkan data, mengembalikan data, menulis semua ini dalam antara muka, kemudian mencipta kelas dan menambah antara muka kami ke kelas ini, i.e. melaksanakan antara muka kami dalam kelas ini. Selanjutnya, semua kaedah/fungsi yang diterangkan dalam antara muka mesti mempunyai pelaksanaan. Ia boleh dilakukan secara langsung dalam antara muka itu sendiri dengan menambah perkataan lalai sebelum kaedah dan menulis pelaksanaan secara langsung dalam kaedah, seperti kelas. Ini menjadi mungkin dengan versi 8 Java. Ia juga boleh dilakukan dalam kelas yang akan melaksanakan antara muka ini. Nah, kami telah menulis antara muka, melaksanakannya dalam kelas, melancarkan pelaksanaan dalam kelas, kami boleh menjalankannya dan mengujinya. Anda juga boleh membaca dalam antara muka tentang:
  • Kaedah statik.
  • Kaedah persendirian. (ulang kod)
  • Pembolehubah/Pemalar.
  • Antara muka bersarang.
Tetapi lebih baik untuk melakukan ini kemudian, dan ia juga berbahaya untuk mengisi kepala anda dengan terlalu banyak. Soalan yang menarik, apakah itu Volvo? Kelas atau Antara Muka?
line1: Volvo v = new VolvoV2();
line2: Volvo v = new VolvoV3();
Sebagai tambahan kepada antara muka, adalah wajar untuk meneruskan tentang Kelas dan Kelas Abstrak. Mungkin nanti, apabila saya mempunyai beberapa jam lagi percuma. ))) PS: Guys, saya meminta semua kritikan di bawah jawatan atau di PM, saya sangat memahami bahawa semua orang memilikinya))) dan saya sentiasa berminat untuk mendengarnya, kerana ini adalah sebab untuk menjadi lebih baik sedikit dan sekali lagi terus maju ke hadapan. Dengan itu, terima kasih semua dan semoga berjaya dalam pengaturcaraan. )))
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION