Apa itu Generik di Java? - Panduan Pemula



Artikel tentang Generik di Java ini akan memberikan wawasan singkat tentang apa itu java generik dan berbagai jenisnya beserta contohnya.

Pertimbangkan contoh di mana Anda harus membuat daftar makhluk hidup di suatu tempat. Tidak peduli apakah itu manusia, hewan, atau tumbuhan. Yang penting adalah makhluk hidup. Dalam hal ini, Anda akan mengelompokkan semuanya sebagai 'Makhluk Hidup' dan tidak mengkategorikannya. Demikian pula, ketika Anda harus menyimpan beberapa data, yang penting bagi Anda adalah konten dan bukan tipe data, dan di sanalah Anda menggunakan Generik. Generik dalam adalah fitur bahasa yang memungkinkan penggunaan jenis dan metode umum.

Di bawah ini adalah daftar topik yang akan saya bahas dalam artikel ini:





__init__ dengan python

Apa itu Generik di Java?

Generik adalah istilah yang menunjukkan sekumpulan fitur bahasa yang terkait dengan definisi dan penggunaan tipe dan metode Generik. Metode umum Java berbeda dari tipe dan metode data biasa. Sebelum Generik, kami menggunakan untuk menyimpan semua jenis objek, mis. non-generik . Sekarang, Generik memaksa programmer untuk menyimpan jenis objek tertentu.

Sekarang setelah Anda mengetahui apa itu Generik di Java, mari melangkah lebih jauh dan memahami mengapa Anda membutuhkan Java Generics.



Mengapa Java Generics?

Jika Anda melihat file kelas, maka Anda akan mengamati bahwa sebagian besar kelas mengambil parameter / argumen tipe Object. Pada dasarnya, dalam formulir ini, mereka dapat menggunakan tipe Java apa pun sebagai argumen dan mengembalikan objek atau argumen yang sama. Mereka pada dasarnya heterogen yaitu bukan dari tipe yang serupa.

FrameworkHierarchy - Generics in Java - Edureka

Terkadang dalam aplikasi Java, tipe data input tidak diperbaiki. Masukan dapat berupa bilangan bulat , untuk mengapung atau . Untuk menetapkan masukan ke dari jenis data yang benar, pemeriksaan sebelumnya harus dilakukan. Dalam pendekatan tradisional, setelah mengambil input, tipe data dari input diperiksa dan kemudian ditugaskan ke variabel dari tipe data yang benar. Ketika logika ini digunakan, panjang kode dan waktu eksekusi bertambah. Untuk menghindari ini, Generik diperkenalkan . Saat Anda menggunakan Generik, parameter dalam kode diperiksa pada waktu kompilasi secara otomatis dan menyetel tipe data secara default. Jadi di sinilah Anda membutuhkan konsep generik di Java.



Sekarang setelah Anda mendapatkan beberapa wawasan tentang Generik, mari kita lanjutkan dan lihat berbagai cara bagaimanaGenerik dapat diterapkan ke kode sumber.

Jenis Generik Java

Ada 4 cara berbeda Generik dapat diterapkan di Java dan mereka adalah sebagai berikut:

  1. Kelas Tipe Generik
  2. Antarmuka Generik
  3. Metode Generik
  4. Pembuat Generik

Sekarang mari kita pahami bagaimana obat generik dapat diterapkan ke kelas tipe secara mendalam.

1. Kelas Tipe Generik

Sebuah kelas dikatakan Generik jika ia mendeklarasikan satu atau lebih tipe variabel. Jenis variabel ini dikenal sebagai jenis parameter file . Mari kita pahami ini dengan bantuan contoh. Pada contoh di bawah ini, saya akan membuat kelas dengan satu properti x dan tipe properti adalah objek.

kelas Genericclass {Objek pribadi x set public void (Objek x) {this.x = x} Objek publik get () {return x}}

Di sini, setelah Anda menginisialisasi kelas dengan tipe tertentu, kelas tersebut harus digunakan dengan tipe tertentu saja. Misalnya. Jika Anda ingin satu instance kelas menyimpan nilai x dari tipe ' Tali ', Maka programmer harus mengatur dan mendapatkan satu-satunya Tipe. Karena saya telah mendeklarasikan tipe properti ke Object, tidak ada cara untuk memberlakukan pembatasan ini. Seorang programmer dapat mengatur objek apa pun dan dapat mengharapkan jenis nilai kembali apa pun dari dapatkan metode karena semua tipe Java adalah subtipe dari kelas.

Untuk menegakkan jenis pembatasan ini, kita dapat menggunakan obat generik seperti di bawah ini:

class Genericclass {// T singkatan dari 'Type' private T x public void set (T x) {this.x = x} public T get () {return x}}

Sekarang Anda dapat yakin bahwa kelas tidak akan disalahgunakan dengan jenis yang salah. Contoh sederhana dari' Kelas umum ”Terlihat seperti yang ditunjukkan di bawah ini:

Genericclass instance = new Genericclass () instance.set ('Edureka') instance.set (10) // Ini akan menimbulkan kesalahan waktu kompilasi

Jadi begitulah cara kerjanya. Inianalogi juga berlaku untuk antarmuka. Mari kita lihat dengan cepat contoh untuk memahami, bagaimana informasi jenis generik dapat digunakan dalam antarmuka di java.

2. Antarmuka Generik

Sebuah mengacu pada tipe data abstrak. Mereka mengizinkan untuk dimanipulasi secara independen dari detail representasi mereka. Juga, mereka membentuk hierarki dalam bahasa. Mari kita pahami bagaimana tipe generik dapat diterapkan pada antarmuka di Java.

// Antarmuka definisi antarmuka generik GenericInterface {T2 PerformExecution (T1 x) T1 ReverseExecution (T2 x)} // Kelas yang mengimplementasikan kelas antarmuka generik Genericclass mengimplementasikan GenericInterface {public Integer PerformExecution (String x) {// execution code} public String ReverseExecution ( Integer x) {// kode eksekusi}}

Saya harap Anda dapat memahami bagaimana Generik dapat diterapkan pada kelas dan antarmuka tipe. Sekarang mari mempelajari lebih dalam artikel ini dan memahami bagaimana hal itu berguna untuk metode dan konstruktor.

3. Metode Generik

Metode umum sangat mirip dengan kelas generik. Mereka berbeda satu sama lain hanya dalam satu aspek yaitu cakupan atau jenis informasi hanya di dalam metode. Metode umum memperkenalkan parameter tipe mereka sendiri.

Mari kita pahami ini dengan sebuah contoh. Di bawah ini adalah contoh metode umum yang dapat digunakan untuk mencari semua kemunculan parameter tipe dalam daftar variabel.

public int countAllOccurrences int statis (T [] daftar, elemen T) {int count = 0 jika (elemen == null) {untuk (T listElement: list) jika (listElement == null) count ++} lain {untuk (T listElement: list ) jika (element.equals (listElement)) count ++} jumlah pengembalian}

Jika Anda melewati daftar String untuk mencari dalam metode ini, itu akan bekerja dengan baik. Tetapi jika Anda mencoba menemukan Nomor dalam daftar String, itu akan memberikan kesalahan waktu kompilasi.

Analogi ini mirip dengan konstruktor juga. Mari kita ambil contoh untuk konstruktor generik dan pahami cara kerjanya.

4. Pembuat Generik

Untuk pembangun adalah blok kode yang menginisialisasi objek yang baru dibuat. SEBUAH pembangun menyerupai metode instance di J ava tapi ini bukan metode karena tidak memiliki tipe kembalian. Konstruktor memiliki nama yang sama dengan kelasnya dan terlihat seperti ini di J ava kode. Sekarang mari kita ambil contoh dan pahami cara kerjanya.

class Dimensi {pribadi panjang T pribadi lebar T pribadi tinggi T // Konstruktor umum dimensi publik (panjang T, lebar T, tinggi T) {super () this.length = length this.width = width this.height = height}}

Dalam contoh di atas, konstruktor kelas Dimensi memiliki informasi jenis. Jadi, Anda dapat memiliki instance dimensi dengan semua atribut dari satu jenis saja. Jadi ini adalah bagaimana Anda dapat menggunakan konstruktor tipe generik. Saya harap Anda memahami jenis-jenis obat generik di Jawa.

Sekarang mari kita melangkah lebih jauh dan melihat keuntungan Generik di Java.

Keunggulan Generik di Java

1. Kode Dapat Digunakan Kembali

Anda dapat membuat strategi atau kelas atau sekali dan gunakan untuk jenis atau cara apa pun yang Anda butuhkan.

2. Transmisi Jenis Individu tidak diperlukan

Pada dasarnya, Anda memulihkan informasi dari setiap kali, Anda perlu mengetiknya. Typecasting pada setiap tugas pemulihan adalah migrain utama. Untuk memberantas pendekatan itu, obat generik diperkenalkan.

3. Menerapkan algoritma non-generik

Itu dapat menghitung algoritme yang bekerja pada berbagai jenis item yang bertipe aman juga.

Sekian tentang keunggulan Java Generics. Dengan ini, kita sampai pada akhir artikel ini tentang Generik di Java. Saya harap Anda menemukannya informatif dan membantu Anda dalam memahami Java Generik.

Lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Kami di sini untuk membantu Anda dengan setiap langkah dalam perjalanan Anda, selain pertanyaan wawancara java ini, kami hadir dengan kurikulum yang dirancang untuk siswa dan profesional yang ingin menjadi Pengembang Java. Kursus ini dirancang untuk memberi Anda permulaan dalam pemrograman Java dan melatih Anda untuk konsep Java inti dan lanjutan bersama dengan berbagai kerangka kerja Java seperti Hibernate & Spring.

final vs akhirnya vs finalize

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar “Generik di Java ”Artikel dan kami akan menghubungi Anda kembali secepatnya.