a. Class
Class adalah wadah yang berisi
abstraksi (pemodelan) dari suatu fungsi objek
(benda), yang mendeskripsikan data (sifat
karakteristik) dan fungsi yang dimiliki oleh
objek tersebut. Karena kelas merupakan wadah
yang akan digunakan untuk menciptakan objek, maka
jelaslah bahwa kita harus membuat kelas
terlebih dahulu sebelum membuat objek.
Dalam Java, kelas didefinisikan menggunakan keyword class. Contoh
class :
class Manusia{
String nama;
}
Pada kode diatas, kelas yang dibuat adalah kelas Manusia. Dan nama
merupakan atribut yang dimiliki kelas Manusia tersebut. Contoh pembuatan objek
untuk kelas manusia adlah sebagai berikut :
//membuat objek manusia
Manusia manusia = new Manusia ();
//mengubah nama objek manusia
manusia.nama="Dennyrdjo"
b. Objek
Object adalah sekumpulan software yang terdiri dari variable dan
method-method terkait. Object saling berinteraksi
dengan saling memanggil metode dari satu
object ke object lainnya, disebut message. Dengan kata lain, object
merupakan instance sebenarnya dari sebuah class.
Instance dibuat sewaktu kita melakukan
inisialisasi class dengan menggunakan kata kunci new.
Objek merupakan hasil dari sebuah kelas, jika diibaratkan objek adalah kue,
maka kelas adalah cetakan kuenya, dimana kue dibuat dengan cetakan tersebut.
Dan sebuah cetakandapat membuat beberapa kue, artinya sebuah kelas dapat
membuat beberapa objek.
Perintah untuk membuat objek :
Kelasobjek= new Kelas()
Jika dalam kelas yang dibuat objek tersebut terdapat atribut, maka dapat dipanggi
dengan . (titik) dan diakhiri dengan ()
Contoh :
//memanggil fungsi
objek.namaFungsi()
c. Attribute
Atribut dari sebuah kelas adalah variabel global yang dimilki sebuah kelas,
misalkan pada kelas sebagai berikut:
class Elemen
NilaiMatKul elmt
Elemen next
Elemen()
{end constructor}
{end class}
maka elmt dan next adalah atribut dari kelas Elemen. Atribut pada sebuah
kelas memiliki izin akses jika kelas digunakan oleh kelas lain, izin akses itu
seperti private, public dan protected.
Atribut Private
Izin akses private pada sebuah atribut biasanya digunakan oleh sebuah kelas untuk melindungi atribut-atributnya agar tidak dapat diakses oleh kelas lain. Sebuah atribut yang dinyatakan sebagai private hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangakan kelas lainnya tidak dapat mengakses atribut ini secara langsung, misalkan kelas sebagai berikut:
Izin akses private pada sebuah atribut biasanya digunakan oleh sebuah kelas untuk melindungi atribut-atributnya agar tidak dapat diakses oleh kelas lain. Sebuah atribut yang dinyatakan sebagai private hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangakan kelas lainnya tidak dapat mengakses atribut ini secara langsung, misalkan kelas sebagai berikut:
class Elemen
private NilaiMatKul elmt
private Elemen next
Elemen()
{end constructor}
{end class}
maka yang dapat mengakses elmt dan next hanyalah kelas Elemen sehingga jika
sebuah kelas List di dalamnya mempunyai kode sebagai berikut:
Elemen e <- new Elemen
maka pengaksesan e.next tidak dizinkan pada kelas List. Agar isi dari sebuah atribut private dapat diakses oleh kelas lain dapat dibuat sebuah metode yang mengembalikan nilai atribut itu, misalnya sebagai berikut:public getNext() -> Elemen
-> next
{end getNext}
sehingga kelas lain akan mengakses atribut next pada kelas Elemen dengan kode Elemen n < e.getNext().
Elemen e <- new Elemen
maka pengaksesan e.next tidak dizinkan pada kelas List. Agar isi dari sebuah atribut private dapat diakses oleh kelas lain dapat dibuat sebuah metode yang mengembalikan nilai atribut itu, misalnya sebagai berikut:public getNext() -> Elemen
-> next
{end getNext}
sehingga kelas lain akan mengakses atribut next pada kelas Elemen dengan kode Elemen n < e.getNext().
Atribut Public
Izin akses public sebuah kelas, jika sebuah atribut diperbolehkan diakses secara langsung oleh kelas lain. Sebuah atribut yang dinyatakan sebagai public dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, misalkan pada kelas Elemen sebagai berikut:
Izin akses public sebuah kelas, jika sebuah atribut diperbolehkan diakses secara langsung oleh kelas lain. Sebuah atribut yang dinyatakan sebagai public dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, misalkan pada kelas Elemen sebagai berikut:
class Elemen
public NilaiMatKul elmt
Elemen next
Elemen ()
{end constructor}
{end class}
maka aatribut elmt dan next dapat diakses secara langsung oleh kelas lain,
misalkan dengan kode:
Elemen e <- new Elemen()
e.next <- NULL
Jika sebuah atribut tidak ditulis izin aksesnya misalkan hanya ditulis Element next, maka interpreter Java akan menganggap atribut next mempunyai izin akses public.
Elemen e <- new Elemen()
e.next <- NULL
Jika sebuah atribut tidak ditulis izin aksesnya misalkan hanya ditulis Element next, maka interpreter Java akan menganggap atribut next mempunyai izin akses public.
Atribut Protected
Izin akses protected sebuah atribut biasanya digunakan oleh sebuah kelas, jika sebuah atribut diperbolehkan diakses secara langsung oleh kelas lain yang merupakan kelas turunannya ( inheritance). Sebuah atribut yang dinyatakan sebagai protected tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya, misalkan pada kelas Elemen sebagai berikut:
Izin akses protected sebuah atribut biasanya digunakan oleh sebuah kelas, jika sebuah atribut diperbolehkan diakses secara langsung oleh kelas lain yang merupakan kelas turunannya ( inheritance). Sebuah atribut yang dinyatakan sebagai protected tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya, misalkan pada kelas Elemen sebagai berikut:
class Elemen
protected NilaiMatKul elmt
protected Elemen next
Elemen()
{end constructor}
{end class}
maka atribut elmt dan next dapat diakses secara langsung oleh kelas lain
yang merupakan turunan kelas Elemen. Izin akses protecteddimaksudkan untuk
melindungi atribut agar tidak diakses secara langsung oleh sembarang kelas
lain, namun diizinkan diakses secara langsung oleh kelas turunannya.
d. Scope Variable
Konsep lingkup (scope) merupakan konsep sangat penting berkaitan dengan
waktu hidup variable. Lingkup sangat terkait erat dengan blok. Lingkup mengacu
pada bagaimana bagian-bagian program berdampak pada waktu hidup variable.
Setiap variable yang dideklarasikan di program mempunyai lingkup keberlakuan .
Lingkup ditentukan oleh blok
Contoh :
class HellpWorld {
..............
}
Blok kelas sangat penting. Hampir semua keperluan di Java berkaitan dengan
kelas atau milik suatu kelas. Metode didefinisikan di kelas yang memiliki
metode tersebut. Secara sintaks maupun logik, segala sesuatu di Java berada di
dalam suatu kelas tertentu.
Blok berikutnya adalah blok di dalam kelas seperti didefinisikan pada kode
didalam metode main(), sebagai berikut :
public static void main(String[]
args) {
}
Blok dalam berada/bersarang di dalam blok luar. Setiap variable yang
didefinisikan di dalam blok lebih dalam adalah lokal blok itu dan tidak tampak
ke blok luar, linkup variable didefiniskan sebagai blok dalam.
Perhatikan contoh berikut :
/*
* Latihan Lingkup dalama Java
* Dibuat tanggal 22 April 2012
*/
package selamatdatang;
/**
*
* @author Muhamad Farhan
*/
public class SelamatDatang {
public static void main(String[] args) {
int intUtama = 10 ;
cetakPesan();
}
public static void cetakPesan(){
String strPesan = "Selamat datang di
contoh lingkup dalam Java" ;
System.out.println(strPesan);
}
}
Kelas SelamatDatang berisi dua metode : yaitu main() dan cetakPesan().
Metode main() men-deklarasikan variable integer intUtama lalu memanggil metode
cetakPesan(). Metode cetakPesan() adalah metode yang mendeklarasikan variable
strPesan lalu mencetak isi dari variable strPesan (isi variable strPesan adalah
“Selamat datang di contoh lingkup dalam Java”).
Variable intUtama yang di definisikan di main() mempunyai lingkup terbatas
di badan metode main(). Badan main () didefinisikan kurung kurawal. Serupa
dengan itu varibale strPesan ada didalam lingkup metode cetakPesan().
Pentingnya lingkup adalah kenyataan bahwa variable tidak tampak diluar
lingkupnya. Blok kelas SelamatDatang sama sekali tidak mengetahui
variable integer intUtama dan variable strPesan. Metode main() tidak
mengetahui variable strPesan dan metode cetakPesan() tidak mengetahui variable
integer intUtama .
e. Overloading Methods
Java membolehkan kita untuk memiliki banyak method yang memiliki nama sama
sepanjang setiap method memiliki jenis argumen yang berbeda. Dengan kata
lain, adalah boleh untuk memiliki dua method berikut dalam satu class
public String printString(String
string)
public String printString(String string, int
offset)
Teknik ini yang disebut dengan method overloading. Nilai kembalian
”return value” dari method tidak lagi menjadi pusat perhatian. Dengan demikian,
kedua method ini boleh berada di class yang sama
public int countRows(int number);
public String countRows(int number);
Using Method Overloading
Deklarasi sebuah method dibentuk dari urutan : Nama method jenis
kembalian method (return value) dan parameter masukan membentuk apa yang
disebut method’s signature. Method signature ini yang harus
berbeda, dan tidak boleh sama dalam satu class. Jadi Nama method boleh sama
selama return value atau parameter masukannya berbeda
public class MainClass {
public void print(int a) {
System.out.println(a); }
public void print(String a)
{
System.out.println(a);
}
}
Seperti yang saya jelaskan sebelumnya, bahwa diperbolehkan memiliki dua
method pada class yang sama
public class MainClass {
public int printNumber(int i) {
return i*2;
}
public long printNumber(long i) {
return i*3;
}
public static void main(String[] args)
{
}
}
jika kita ingin memasukan argumen printNumber(3) maka kita menggunakan
method berikut :
public int printNumber(int i)
f. Input/Output
Berikut ini adalah langkah-langkah yang perlu dilakukan untuk mendapatkan
input:
1. Tambahkan di bagian paling atas code anda:
import java.io.*;
2. Tambahkan statemen berikut pada method main:
BufferedReader dataIn = new
BufferedReader (new InputStreamReader(System.in));
3. Deklarasikan variabel String temporary dan gunakan fungsi readLine()
untuk mendapatkan input serta ketikkan pada blog try-catch.
try {
String temp = dataIn.readLine();
} catch ( IOException e ){
System.out.println(“Terjadi kesalahan saat anda melakukan input ”)
}
Berikut ini adalah langkah-langkah yang
perlu dilakukan untuk mendapatkan input dari
console dengan Scanner:
1. Menambahkan
Import java.until.Scanner;
2. Membuat objek dari kelas Scanner
Scanner input = new Scanner
(System.in)
3. Memasukkan nilai dari masing-masing variabel dengan menggunakan bjek
dari Scanner
System.out.print (“Masukkan nama
: ”);
String nama = input.nextLine();
System.out.println (nama);
No comments:
Post a Comment