Java adalah Bahasa Pemrograman Berorientasi Objek. Sebagai bahasa yang memiliki fitur berorientasi objek, Java mendukung konsep dasar berikut:
- Polimorfisme (Polymorphism)
- Pewarisan (Inheritance)
- Enkapsulasi (Encapsulation)
- Abstraksi (Abstraction)
- Kelas-kelas (Classes)
- Objek-objek (Objects)
- Percontohan (Instance)
- metode (Method)
- Penguraian Pesan (Message Parsing)
- Objek, Objek memiliki keadaan dan perilaku. Contoh: Seekor anjing memiliki keadaan (warna, nama, berkembang biak) serta perilaku (mengibas-ngibas, menggonggong, makan). Sebuah objek adalah contoh dari kelas.
- Kelas, kelas dapat didefinisikan sebagai pola / cetak biru yang menggambarkan perilaku / menyatakan bahwa objek berjenis dukungan.
Objek pada Java :
Mari kita telusuri apa itu sebuah objek. Jika kita memikirkan suatu dunia nyata kita dapat menemukan banyak objek di sekitar kita, Mobil, Anjing, Manusia dll. Semua objek-objek memiliki keadaan dan perilaku.
Jika kita menganggap anjing, maka keadaannya adalah - nama, jenis, warna, dan perilakunya - menggonggong, mengibas-ngibas, berjalan.
Jika Anda membandingkan objek perangkat lunak dengan objek dunia nyata, keduanya memiliki karakteristik yang sangat mirip.
Objek perangkat lunak juga memiliki keadaan dan perilaku. Sebuah keadaan objek perangkat lunak disimpan dalam lingkungan dan perilakunya ditunjukkan melalui metode.
Jadi dalam pengembangan perangkat lunak, metode beroperasi pada keadaan internal suatu objek dan komunikasi dari objek ke objek dilakukan melalui metode.
Kelas Pada Java :
Sebuah kelas adalah cetak biru dimana objek individu yang dibuat.
Berikut contoh Kelas Pada Java :
public class Anjing { String berkembang biak; int usia; String warna; void menggonggong () { } void lapar () { } void tidur () { } }
Sebuah kelas dapat berisi salah satu jenis variabel berikut :
Variabel lokal : Variabel didefinisikan di dalam metode, konstruktor atau cetakan yang disebut variabel lokal. Variabel akan dideklarasikan dan diinisialisasi dalam metode dan variabel akan dihancurkan ketika metode telah selesai.
Variabel contoh : variabel Contoh merupakan variabel di dalam suatu kelas tetapi di luar setiap metode. Variabel ini dipakai ketika kelas dimuat. Variabel contoh dapat diakses dari dalam metode, konstruktor atau cetakan kelas tertentu.
Variabel kelas : Kelas variabel adalah variabel yang dideklarasikan dengan dalam satu kelas, di luar setiap metode, dengan kata kunci statis. Sebuah kelas dapat memiliki sejumlah metode untuk mengakses nilai dari berbagai jenis metode. Dalam contoh di atas, menggonggong(), lapar() dan tidur() adalah sebuah metode.
Di bawah ini disebutkan beberapa topik penting yang perlu dibahas ketika melihat ke kelas bahasa pemrograman Java.
Konstruktor:
Ketika membahas tentang kelas, salah satu sub topik yang paling penting adalah konstruktor. Setiap kelas memiliki konstruktor. Jika kita tidak secara eksplisit menulis konstruktor untuk membuat kompiler kelas Java maka dibuat konstruktor kelas bawaan.
Setiap kali sebuah objek baru dibuat, setidaknya satu konstruktor akan dipanggil. Aturan utama konstruktor adalah bahwa mereka harus memiliki nama yang sama dengan kelas. Sebuah kelas dapat memiliki lebih dari satu konstruktor.
Berikut adalah contoh konstruktor :
Variabel contoh : variabel Contoh merupakan variabel di dalam suatu kelas tetapi di luar setiap metode. Variabel ini dipakai ketika kelas dimuat. Variabel contoh dapat diakses dari dalam metode, konstruktor atau cetakan kelas tertentu.
Variabel kelas : Kelas variabel adalah variabel yang dideklarasikan dengan dalam satu kelas, di luar setiap metode, dengan kata kunci statis. Sebuah kelas dapat memiliki sejumlah metode untuk mengakses nilai dari berbagai jenis metode. Dalam contoh di atas, menggonggong(), lapar() dan tidur() adalah sebuah metode.
Di bawah ini disebutkan beberapa topik penting yang perlu dibahas ketika melihat ke kelas bahasa pemrograman Java.
Konstruktor:
Ketika membahas tentang kelas, salah satu sub topik yang paling penting adalah konstruktor. Setiap kelas memiliki konstruktor. Jika kita tidak secara eksplisit menulis konstruktor untuk membuat kompiler kelas Java maka dibuat konstruktor kelas bawaan.
Setiap kali sebuah objek baru dibuat, setidaknya satu konstruktor akan dipanggil. Aturan utama konstruktor adalah bahwa mereka harus memiliki nama yang sama dengan kelas. Sebuah kelas dapat memiliki lebih dari satu konstruktor.
Berikut adalah contoh konstruktor :
public class Kucing{ public Kucing(){ } public Kucing(String nama){ // Konstruktor ini memiliki satu parameter, nama. } }Java juga mendukung satu Kelas di mana dapat dibuat hanya satu turunan dari kelas.
Membuat Objek :
Seperti disebutkan sebelumnya, kelas menyediakan cetak biru untuk objek. Jadi pada dasarnya sebuah objek dibuat dari kelas. Di Java, kata kunci baru digunakan untuk membuat objek baru.
Ada tiga langkah saat membuat objek dari kelas:
Deklarasi : Sebuah deklarasi variabel dengan nama variabel dengan jenis objek.
Instansiasi : Kata kunci 'baru' yang digunakan untuk membuat objek.
Inisialisasi : Kata kunci 'baru' diikuti dengan panggilan untuk konstruktor. Pemanggilan ini menginisialisasi objek baru.
Berikut contoh membuat objek :
public class Kucing{ public Kucing(String nama){ // Konstruktor ini memiliki satu parameter, nama. System.out.println("Lewat Nama :" + nama ); } public static void main(String []args){ // Setelah pernyataan dibuat objek kucingKu Kucing kucingKu = new Kucing( "Budi" ); } }
Jika kode diatas dikompile maka akan menghasilkan output sebagai berikut:
Lewat Nama :Budi
Mengakses Variabel Instan dan Metode:
Variabel instan dan metode diakses melalui objek yang dibuat. Untuk mengakses variabel instan cara yang memenuhi syarat harus sebagai berikut:
/ * Pertama membuat objek * / ObjectReference = new Constructor(); / * Sekarang memanggil variabel seperti berikut * / ObjectReference.NamaVariabel; / * Sekarang Anda dapat memanggil metode kelas sebagai berikut * / ObjectReference.MethodName();
Contoh:
Contoh ini menjelaskan cara mengakses variabel instan dan metode kelas:
public class Nina{ int UmurNina; public Nina(String nama){ // Konstruktor ini memiliki satu parameter, nama. System.out.println("Lewati Nama :" + nama ); } public void setUmur( int umur ){ UmurNina = umur; } public int getUmur( ){ System.out.println("Umur Nina :" + UmurNina ); return UmurNina; } public static void main(String []args){ /* Pembuatan Objek */ Nina Ninaku = new Nina( "Sanni" ); /* Memanggil metode kelas untuk mengatur umur nina */ Ninaku.setUmur( 2 ); /* memanggil metode kelas lain untuk mendapatkan umur nina */ Ninaku.getUmur( ); /* Anda dapat mengakses variabel instan sebagai berikut */ System.out.println("Niai Variable :" + Ninaku.UmurNina ); } }
Jika kita mengkompilasi dan menjalankan program di atas, maka akan hasilnya sebagai berikut:
Lewati Nama :Sanni
Umur Nina :2
Niai Variable :2
Aturan deklarasi Sumber file :
Hanya ada satu kelas publik per file sumber.
Sebuah file sumber dapat memiliki beberapa kelas non publik.
Nama kelas publik harus merupakan nama dari file sumber yang juga harus ditambahkan oleh extensi .java di akhir. Sebagai contoh: Nama kelas. public class Karyawan {} Kemudian file sumber harus sebagai Karyawan.java.
Jika pernyataan import yang ada maka harus ditulis antara pernyataan paket dan deklarasi kelas. Jika tidak ada pernyataan paket maka pernyataan import harus menjadi baris pertama dalam file sumber.
Pernyataan package dan import akan mengartikan semua class yang ada di sumber file. Hal ini tidak mungkin untuk mendeklarasikan Pernyataan package dan import berbeda dengan file sumber karena file sumber tidak dapat di kompile dan akan terjadi error.
Terlepas dari metode dan kelas yang ada, java juga memiliki kelas khusus yang disebut Inner classes dan Anonymous class.
Java Package:
Secara sederhana, Package adalah cara mengelompokkan class dan interface. Ketika mengembangkan aplikasi di Java, ratusan kelas dan interface akan ditulis, oleh karena itu mengkategorikan kelas ini adalah suatu keharusan serta membuat menjadi lebih mudah.
Pernyataan Import:
Di Java jika penamaan memenuhi syarat yang mencakup package dan nama class maka compiler dapat dengan mudah menemukan source code atau class. Pernyataan import adalah cara memberikan lokasi yang tepat compiler untuk menemukan kelas tertentu.
Misalnya, baris berikut akan meminta compiler untuk memuat semua kelas yang tersedia dalam direktori java_installation/java/io :
import java.io.*;
Studi Kasus Sederhana :
Penggabungan dua class pada java, sebagai contoh class Karyawan yang memiliki empat variabel misalnya nama, umur, jabatan dan gaji. Kelas memiliki satu konstruktor didefinisikan secara eksplisit, dimana parameter nya teah ditentukan.
Source Code class 1 :
simpan dengan nama file Karyawan.java di drive D
import java.io.*; public class Karyawan{ String nama; int umur; String jabatan; double gaji; // ini adalah kontruktor dari class karyawan public Karyawan(String nama){ this.nama = nama; } // Menentukan variabel umur Karyawan. public void karUmur(int karUmur){ umur = karUmur; } /* Menentukan variabel jabatan Karyawan.*/ public void karJabatan(String karJabatan){ jabatan = karJabatan; } /* Menentukan variabel gaji Karyawan.*/ public void karGaji(double karGaji){ gaji = karGaji; } /* Mencetak detail karyawan */ public void cetakKaryawan(){ System.out.println("Nama:"+ nama ); System.out.println("Umur:" + umur ); System.out.println("Jabatan:" + jabatan ); System.out.println("Gaji:" + gaji); } }
Source Code class 2 :
simpan dengan nama file KaryawanTes.java di drive D
import java.io.*; public class KaryawanTes{ public static void main(String args[]){ /* membuat dua objek dengan menggunakan konstruktor */ Karyawan karSatu = new Karyawan("Adam Jordan"); Karyawan karDua = new Karyawan("Mira Kirana"); // Menjalankan Metode untuk setiap objek yang dibuat karSatu.karUmur(26); karSatu.karJabatan("Senior Software Engineer"); karSatu.karGaji(1000); karSatu.cetakKaryawan(); karDua.karUmur(21); karDua.karJabatan("Software Engineer"); karDua.karGaji(500); karDua.cetakKaryawan(); } }
Setelah di Simpan kedua source code nya kemudian
kompile kedua source code di cmd : D; javac
jalankan source code yang ke-2 : java KaryawanTes
Berikut hasil dari source tersebut :
Nama:Adam Jordan
Umur:26
Jabatan:Senior Software Engineer
Gaji:1000.0
Nama:Mira Kirana
Umur:21
Jabatan:Software Engineer
Gaji:500.0
Sumber :(TutPoin)
Tidak ada komentar :
Posting Komentar