Pertemuan 8 JAVA

download Pertemuan 8 JAVA

of 8

Transcript of Pertemuan 8 JAVA

ARRAY DAN ARGUMEN BARIS PERINTAH

PAGE 1

KELAS DAN OBJEKKonsep pemrograman berorientasi objek yang populer pada masa kini menjadikan objek sebagai komponen utama dalam bahasa pemrograman. Objek menggabungkan data dan fungsi sebagai satu kesatuan, sedangkan pada pemrograman yang tidak berorientasi objek, fungsilah yang menjadi perhatian utama.Fungsi adalah subprogram atau sekumpulan kode yang diberi nama tersendiri. Pendekatan pemrograman berorientasi objek membuat pengembangan program dapat dilakukan dengan lebih mudah, mengurangi duplikasi kode dan mengurangi kesalahan.Pada pemrograman berorientasi objek terdapat dua istilah yang sangat terkenal yaitu kelas dan objek. Perbedaan kelas dan objek dapat dijelaskan melalui analogi :

kelas itu seperti cetakan kue.

kelas adalah cetakan untuk objek

Sejumlah kue dapat diciptakan dengan menggunakan sebuah cetakan. Begitu pula halnya dengan kelas, sejumlah objek dapat pula diciptakan. Seringkali dikatakan bahwa objek adalah instan kelas.

Contoh lain dari sebuah kelas adalah mobil. Objek kelas mobil dapat memiliki data seperti merk, warna, dan atribut lain yang berhubungan dengan mobil sedangkan metode yang dimiliki objek mobil dapat berupa cara menghidupkan mesin dan mengoper persneling.MENGGUNAKAN OBJEK

Objek dibuat dengan mula-mula membuat variabel yang kelak merujuk ke objek. Variabel seperti ini biasa disebut variabel objek. Selanjutnya objek diciptakan melalui new dan hasilnya ditugaskan ke variabel objekContoh :

//nama file berkas : objektanggal.java

import java.util.Date;

public class objektanggal

{

public static void main (String[] args)

{

Date waktusekarang=new Date();

System.out.println("Tanggal dan Waktu Sekarang : "+waktusekarang);

}

}Hasil :

Tanggal dan Waktu Sekarang : Tue Oct 28 12:31:15 ICT 2008Perlu diketahui bahwa Date adalah kelas yang disediakan Java yang berhubungan dengan tanggal dan waktu. Kelas ini terdapat pada paket java.util.Date. Variabel waktusekarang merujuk ke objek yang berisi tanggal dan jam saat pernyataan dijalankan.Adakalanya Anda perlu memanggil variabel instan yang terdapat pada suatu objek.

Bentuk pemanggilan :

namaVariabelObjek.namaVariabelInstan

Untuk memanggil metode yang tedapat pada suatu objek diperlukan notasi sebagai berikut :

namaVariabelObjek.namaMetode()

atau jika metode melibatkan argumen :

namaVariabelObjek.namaMetode(argumen1, argumen2, ...)

Contoh :

//nama file berkas : metode1.java

public class metode1

{

public static void main (String[] args)

{

String teks = "Selamat Belajar Java";

System.out.println(teks.toUpperCase());

System.out.println(teks.charAt(5)); }

}Hasil :

SELAMAT BELAJAR JAVA

aPerintah teks.toUpperCase() merupakan contoh pemanggilan objek yang tidak melibatkan argumen dimana perintah tersebut berguna untuk menghasilkan string dengan seluruh huruf berupa huruf kapital.

Perintah teks.charAt(5) merupakan contoh pemanggilan metode objek yang melibatkan sebuah argumen dimana perintah tersebut berguna untuk memperoleh sebuah karakter yang terletak pada posisi ke-6 karena posisi pertama karakter dimulai dari nol.

MENCIPTAKAN KELASKelas pada Java didefinisikan dengan menggunakan kata kunci class.Contoh :

//nama file berkas : kelasmobil.java

class mobil

{

String warna;

int tahun;

}

public class kelasmobil

{

public static void main (String[] args)

{

mobil mobilku = new mobil();

mobilku.warna ="Merah";

mobilku.tahun = 2008;

System.out.println("Warna mobilku adalah "+mobilku.warna);

System.out.println("Dibuat tahun : "+mobilku.tahun);

}

}Hasil :

Warna mobilku adalah Merah

Dibuat tahun : 2008KELAS DAN METODE

Sebuah kelas pada umumnya tersusun atas variabel instan dan metode untuk objek. Metode adalah fungsi (subprogram) yang melekat pada sebuah objek atau instan kelas.

Contoh :

//nama file berkas : kelasmetode.java

class mobil

{

String warna;

int tahun;

void isidata(String warnamobil, int tahunmobil)

{

warna=warnamobil;

tahun=tahunmobil;

}

String isiwarna()

{

return warna;

}

int isitahun()

{

return tahun;

}

}

public class kelasmetode

{

public static void main (String[] args)

{

mobil mobilku = new mobil();

mobilku.isidata("Hitam", 2008);

System.out.println("Warna mobilku adalah "+mobilku.isiwarna());

System.out.println("Dibuat tahun : "+mobilku.isitahun());

}

}Hasil :

Warna mobilku adalah Hitam

Dibuat tahun : 2008Keterangan :

Metode isidata() digunakan untuk mengisikan data warna dan tahun

Pernyataan warna=warnamobil; dan tahun=tahunmobil; digunakan untuk mengisikan nilai parameter ke variabel instan

Kata kunci void menyatakan bahwa metode ini tidak mempunyai nilai balik (nilai yang diberikan oleh metode ketika dipanggil)

Metode isiwarna() digunakan untuk memperoleh isi variabel instan dengan tipe yang sama yaitu String. Sedangkan return warna() merupakan pernyataan untuk memberikan nilai baliknya sekaligus mengakhiri eksekusi metode.

KATA KUNCI THIS

Kata kunci this digunakan pada pembuatan kelas dan digunakan untuk menyatakan objek sekarang.

Contoh :

//nama file berkas : kelasthis.java

class mobil

{

String warna;

int tahun;

void isidata(String warna, int tahunmobil)

{

this.warna=warna;

this.tahun=tahunmobil;

}

}

public class kelasthis

{

public static void main (String[] args)

{

mobil mobilku = new mobil();

mobilku.isidata("Silver", 2008);

System.out.println("Warna mobilku adalah "+mobilku.warna);

System.out.println("Dibuat tahun : "+mobilku.tahun);

}

}Hasil :

Warna mobilku adalah Silver

Dibuat tahun : 2008LINGKUP VARIABEL

Bila dalam suatu metode terdapat pemanggilan terhadap suatu variabel, Java menggunakan konsep sebagai berikut. Mula-mula variabel akan dianggap berada pada lingkup blok sekarang. Jika tidak ada, Java akan mencarikannya pada blok yang lebih luar. Begitu seterusnya.

Berdasarkan konsep lingkup variabel seperti ini, dimungkinkan untuk membuat variabel yang bersifat lokal.

Contoh :

//nama file berkas : lingkupthis.java

class mobil

{

String warna="Merah";

int tahun=2008;

void mobilku()

{

String warna="Biru";

int tahun=2008;

System.out.println("Warna dan tahun pada metode mobilku : " +warna+" dan "+tahun);

System.out.println("Warna dan tahun pada kelas instan mobil : " +this.warna+" dan "+this.tahun);

}

}

public class lingkupthis

{

public static void main (String[] args)

{

mobil proses = new mobil();

proses.mobilku();

}

}Hasil :Warna dan tahun pada metode mobilku : Biru dan 2008

Warna dan tahun pada kelas instan mobil : Merah dan 2008PENENTU AKSES : PRIVATE DAN PUBLIC

Pada pemrograman yang berorientasi objek, akses terhadap suatu variabel instan di luar kelas biasanya tidak diperkenankan. Sebagai penggantinya, disediakan metode yang diperlukan untuk mengakses variabel instan.Berkaitan dengan boleh-tidaknya suatu variabel instan diakses dari luar kelas, Java menyediakan penentu akses yaitu :

public

berarti bahwa pengaksesan suatu variabel instan atau metode dapat dilakukan dari luar kelas

private

berarti bahwa pengaksesan suatu variabel instan atau metode hanya dapat dilakukan di dalam kelas, tidak bisa diakses dari luar kelas.

Contoh :

//nama file berkas : penentuakses.java

class siswa

{

String nama;

void isidata(String nama)

{

this.nama=nama;

}

String isinama()

{

return this.nama;

}

}

public class penentuakses

{

public static void main (String[] args)

{

siswa siswaku = new siswa();

siswaku.isidata("Sekar Ayu");

System.out.println("Nama Siswa (metode) adalah "+siswaku.isinama());

System.out.println("Nama Siswa (variabel instan) adalah "+siswaku.nama);

}

}

Hasil :

Nama Siswa (metode) adalah Sekar Ayu

Nama Siswa (variabel instan) adalah Sekar AyuProgram akan error jika ditambahkan private di depan String nama; tetapi jika ditambah public tidak akan terjadi kesalahan. Sekilas terlihat bahwa suatu variabel yang tidak diberi penentu akses apapun, variabel tersebut memiliki sifat yang sama dengan jika diberi penentu akses public, namun sebenarnya variabel tersebut memiliki makna yang berbeda.Perhatikan gambar berikut :

METODE KELAS

Kadangkala dijumpai pemanggilan metode dengan bentuk :

namaKelas.namaMetode() bukan dalam bentuk namaVariabelObjek.namaMetode()

Contoh :

//nama file berkas : metodekelas.java

public class metodekelas

{

public static void main (String[] args)

{

double akar = Math.sqrt(25);

System.out.println("Akar dari 25 adalah "+akar);

}

}

Hasil :

Akar dari 25 adalah 5.0Perhatikan bahwa pada program di atas tidak terdapat penciptaan objek. Metode sqrt dapat dipanggil secara langsung dengan menggunakan Math (nama kelas yang tersedia pada Java yang berkaitan dengan penanganan berbagai operasi matematika).

Untuk membuat metode kelas (metode yang dapat dipanggil dengan menyebutkan nama kelas), Anda dapat menggunakan bentuk :

static tipe namaMetode(parameter1, parameter2,...) { ... }

Kata kunci static merupakan kunci untuk membuat metode kelas.

Contoh :

//nama file berkas : kuadrat.java

class matematika

{

static public double kuadrat(double nilai)

{

return nilai*nilai;

}

}

public class kuadrat

{

public static void main (String[] args)

{

double bilangan = matematika.kuadrat(5);

System.out.println("Kuadrat dari 5 adalah "+bilangan);

}

}Hasil :

Kuadrat dari 5 adalah 25.0TUGAS

1. Buat program untuk menghitung gaji harian PT. XYZ dengan ketentuan :

Gaji pokok karyawan Rp. 2000/jam

Bila karyawan bekerja lebih dari 7 jam/hari maka kelebihannya dihitung lembur yang besarnya 1.5 dari gaji pokok

Untuk karyawan yang bekerja 8 jam/hari atau lebih akan mendapat tambahan uang makan sebesar Rp. 3500

Karyawan yang bekerja 9 jam/hari atau lebih akan mendapat uang transport lembur sebesar Rp. 4000

Gunakan fungsi kelas dan metodeInput : NIP, Nama, Jumlah jam kerja

Output : NIP, Nama, Gaji pokok, Lembur, Uang makan, Transport lembur

metode

metode

variabel instan

mengisi variabel instan

variabel instan

sebuah instan kelas

Objek 3

Objek 2

Kelas

Objek 1

metode

program error jika dirubah menjadi private String nama;

PAGE