MODUL XVI, Algoritma Pemrograman I

KELAS DAN OBYEK II
A.   DASAR TEORI
Sebuah cirri khas program java menciptakan banyak obyek sperti kita ketahui, berinteraksi dengan meminta method melalui interksi obyek-obyek tersebut, sebuah program dapat membawa macam-macam tugas, seperti implementasi GUI, menjalankan animasi, atau mengirim atau menerima informasi melalui jaringan. Sekali sebuah obyek menyelesaikan sebuah pekerjaan untuk apa obyek tersebut dibuat, sumber dayanya didaur ulang untuk digunakan oleh obyek lain.
Menciptakan Obyek
Sudah kita ketahui saat kita menciptakan sebuah obeyk dari sebuah kelas, maka cetakan kelas tersebut akan ada di dalam obyek tersebut.
1)      Deklarasi : semua deklarasi variable yang mngasosiasikan nama variable degan sebuah tipe dari obyek.
2)      Instansiasi : kata kunci new dalah operator java menciptakan obyek.
3)      Inisialisasi : operator new diikuti oleh pemanggilan konstruktor, yang mana menginisialisasi obyek baru
Mendeklarasikan Sebuah Variabel untuk Mengacu ke Sebuah Obyek
Dengan sebuah variable primitive, deklarasi ini juga meyediakan jumlahmemori yang tepat untuk variable. Deklarasi variable referensi tidak menciptakan sebuah obyek. Untuk itu kita membutuhkan operator new untuk menciptakan obyek.
Instansiasi sebuah Kelas
Operator new mengintansi sebuah kelas dengan akolasi memori untuk obyek baru dan mengembalikan sebuah referensi kesebuah memori tersebut. Operator new juga melibatkan konstruktor obyek. Istilah mengistansiasi sebuah kelas berarti mempunyai maksud yang sama dengan menciptakan sebuah obyek. Ketika kita menciptakan sebuah obyek, kita menciptakan sebuah instance dari sebuah kelas, sehingga disebut dengan instansiasi sebuah kelas.
Operator new memrlukan sebuah argument tunggal, postfix yang merupakan panggilan untuk sebuah konstruktor. Nama dari konstruktor menyediakan nama dari sebuah kelas untuk instasiasi. Operator new mengembalikan sebuah obyek yang diciptakan.
B.   PEMBAHASAN
Program :
1.public class Titik{
2.public int x = 0;
3.public int y = 0;
4.public Titik(int a, int b){
5.x = a;
6.y = b;
7.}
8.}
Pembahasan :
Baris 1 adalah deklarasi kelas. Baris 2 sampai 3 adalah deklarasi fields yang bisa digunakan dilain kelas yaitu fields x yang bertipe integer dan fields y yang juga bertipe integer. Baris 5 sampai 7 adalah konstruktor dimana nilai fields x = a, dan nilai fields y = b.
Program :
1.public class PersegiPanjang1{
2.public int panjang = 0;
3.public int lebar = 0;
4.public Titik awal;
5.public PersegiPanjang1(){
6.awal = new Titik(0, 0);
7.}
8.public PersegiPanjang1(Titik p){
9.awal = p;
10.    }
11.    public PersegiPanjang1(int w, int h){
12.    awal = new Titik(0, 0);
13.    panjang = w;
14.    lebar = h;
15.    }
16.    public PersegiPanjang1(Titik p, int w, int h){
17.    awal = p;
18. panjang = w;
19. lebar = h;
20. }
21. public void pindah(int x, int y){
22. awal.x=x;
23. awal.y=y;
24. }
25. public int getLuas(){
26. return panjang * lebar;
27. }
28. }
Pembahasan :
Baris 1 sampai 4 adalah sebuah deklarasi kelas yang diberi nama PersegiPanjang1. Dimana pada kelas ini tedapat  2 fields yaitu fields  panjang yang bertipe integer dan bernilai 0, dan fields  lebar yang juga  bertipe integer dan bernilai 0. Titik awal, mengambil konstruktor dari kelas Titik pada program 1. Baris 5 sampai 7 adalah sebuah konstruktor yang menyatakan bahwa pada kelas PersegiPanjang1 nilai awal = Titik yang diambil dari kelas Titik pada program 1. Baris 8 sampai 10 adalah konstruktor yang ada di kelas PersegiPanjang1 yang menggunakan parameter Titik p yang didapat dari kelas Titik pada program 1. Dimana pada konstruktor ini dijelaskan bahwa nilai awal = p. Baris 11 sampai 15 adalah konstruktor yang ada di kelas PersegiPanjang1, yang menggunakan parameter w dan h yang bertipe integer. Dimana pada konstruktor ini dijelaskan bahwa nilai awal = Titik(0, 0), nilai panjang = w, dan nilai lebar = h. Baris 16 sampai 20 adalah konstruktor yang ada di kelas PersegiPanjang1, yang menggunakan parameter p,  w dan h yang bertipe integer. Dimana pada konstruktor ini dijelaskan bahwa nilai awal = p, nilai panjang = w, dan nilai lebar = h. Baris 21 sampai 24  adalah  method yang digunakan untuk memindahkan persegi panjang. Dimana pada method ini menggunakan parameter x dan y yang bertipe integer. Pada method ini dijelaskan bahwa variabel awal.x =x dan variabel awal.y  = y. Baris 25 sampai 26 adalah  method yang digunakan untuk menghitung luas persegi panjang. Method ini diberi nama getLuas. Dimana untuk mendapatkan hasil luas adalah dengan mengalikan variabel panjang dengan variabel lebar.
Program :
1.public class MembuatObyek {
2.public static void main(String args[]) {
3.Titik titikAwal = new Titik(23, 24);
4.PersegiPanjang1 persegiSatu = new PersegiPanjang1 (titikAwal, 100, 200);
5.PersegiPanjang1 persegiDua = new PersegiPanjang1 (titikAwal, 50, 100);
6.System.out.println(“Panjang persegiSatu : “+persegiSatu.panjang);
7.System.out.println(“Lebar persegiSatu : “+persegiSatu.lebar);
8.System.out.println(“Luas persegiSatu : “+persegiSatu.getLuas());
9.persegiDua.awal = persegiSatu.awal;
10.    System.out.println(“Posisi X dari persegiDua : “+persegiDua.awal.x);
11.    System.out.println(“Posisi Y dari persegiDua : “+persegiDua.awal.y);
12.    persegiDua.pindah(40, 72);
13.    System.out.println(“Posisi X dari persegiDua : “+persegiDua.awal.x);
14.    System.out.println(“Posisi Y dari persegiDua : “+persegiDua.awal.y);
15.    }
16.    }
Hasil output program :
Pembahasan :
Baris 1 sampai 2 adalah nama kelas yang akan dibuat yaitu MembuatObyek. Dimana kelas ini merupakan program utama dalam java yang berarti memulai program dengan method main. Baris 3 adalah deklarasi Fungsi baru yang diberi nama titikAwal yang didapat dari kelas Titik dan  PersegiPanjang pada program 1 dan 2. Berisi data titik (23, 24). Baris 4 sampai 5 adalah deklarasi dan penciptaan 2 obyek PersegiPanjang. Dimana PersegiPanjang1 persegiSatu merupakan data yang diambil dari kelas PersegiPanjang1. Baris 6 sampai 8 digunakan untuk menampilkan data yang terdapat didalam tanda titik dua yaitu “Panjang persegiSatu : ” , “Lebar persegiSatu : ” dan “Luas persegiSatu : ” serta untuk menampilkan hasil panjang persegiSatu, Lebar persegiSatu dan Luas persegiSatu sesuai dengan method panjang, method lebar dan method getLuas yang setelah selesai ditampilkan akan berpindah baris. Baris 9 adalah deklarasi yang menyatakan bahwa nilai persegiDua.awal = persegiSatu.awal. Baris 10 dan 11 digunakan untuk menampilkan data yang terdapat didalam tanda titik dua yaitu “ Posisi X dari persegiDua : ” dan “Posisi Y dari persegiDua : ” serta untuk menampilkan hasilnya sesuai dengan method persegiDua.awal.x dan persegiDua.awal.y yang setelah selesai ditampilkan akan berpindah baris. Baris 12 berfungsi memindah nilai persegiDua menjadi x = 40 dan y = 72. Baris 13 sampai 14 digunakan untuk menampilkan data yang terdapat didalam tanda titik dua yaitu “Posisi X dari persegiDua : ” dan “Posisi Y dari persegiDua : ” serta untuk menampilkan hasilnya sesuai dengan method persegiDua.awal.x dan persegiDua.awal.y yang setelah selesai ditampilkan akan berpindah baris.
Program :
1.class Bicycle{
2.public int cadence;
3.public int gear;
4.public int speed;
5.public Bicycle (int startCadence, int startSpeed, int startGear){
6.gear = startGear;
7.cadence = startCadence;
8.speed = startSpeed;
9.}
10.    public void setCadence (int newValue){
11.    cadence = newValue;
12.    }
13.    public void setGear(int newValue){
14.    gear = newValue;
15.    }
16.    public void applyBrake (int decrement){
17.    speed -= decrement;
18.    }
19.    public void speedUp (int increment){
20.    speed += increment;
21.    }
22.    public int getCadence(){
23.  return cadence;
24. }
25. public int getGear(){
26. return gear;
27. }
28. public int getSpeed(){
29.  return speed;
30. }
31. }
32. public class ApliBicycle{
33. public static void main (String a[]){
34. Bicycle sepeda = new Bicycle (12,13,14);
35. System.out.println(“Cadence   : “+sepeda.getCadence());
36. System.out.println(“Gear : “+sepeda.getGear());
37. System.out.println(“Speed     : “+sepeda.getSpeed());
38. sepeda.setCadence(19);
39. System.out.println(“Cadence   : “+sepeda.getCadence());
40. }
41. }
Hasil output program :
Pembahasan :
Baris 2 sampai baris 4 adalah kelas Bicycleyang akan dibuat terdiri dari 3 fields yaitu cadence, gear, dan speed yang semuanya bertipe integer. Baris 5 sampai 9 adalah konstruktor yang ada di dalam kelas Bicycle yang berisi 3 argumen integer yaitu startCadence, startSpeed dan startGear. Dimana nilai gear = startGear, cadence = startCadence, dan speed = startSpeed. Baris 10 sampai 12 adalah method yang terdapat pada kelas Bicycleyang diberi nama method setCadenceyang berisi 1 arguman yaitu newValue yang bertipe integer. Dimana telah ditentukan bahwa nilai cadence = newValue. Baris 13 sampai 15 adalah method yang terdapat pada kelas Bicycleyang diberi nama method setGearyang berisi 1 arguman yaitu newValue yang bertipe integer. Dimana telah ditentukan bahwa nilai gear = newValue. Baris 16 sampai 18 adalah method yang terdapat pada kelas Bicycleyang diberi nama method applyBrakeyang berisi 1 arguman yaitu decrement yang bertipe integer. Dimana telah ditentukan bahwa nilai speed = speed dikurangkan dengan nilai decrement atau nilai speed tidak boleh lebih kecil dari nilai decrement. Baris 19 sampai 21 adalah method yang terdapat pada kelas Bicycleyang diberi nama method speedUpyang berisi 1 arguman yaitu increment yang bertipe integer. Dimana telah ditentukan bahwa nilai speed = speed ditambahkan dengan nilai increment. Baris 22 sampai 24 adalah method yang terdapat pada kelas Bicycleyang diberi nama method getCadenceyang tidak berisi argumen. Yang mana nantinya program ini akan menghasilkan nilai cadence. Baris 25 sampai 27 adalah method yang terdapat pada kelas Bicycle yang diberi nama method getGear yang tidak berisi argumen. Yang mana nantinya program ini akan menghasilkan nilai gear. Baris 28 sampai 30 adalah method yang terdapat pada kelas Bicycle yang diberi nama method getSpeed  yang tidak berisi argumen. Yang mana nantinya program ini akan menghasilkan nilai speed. Baris 32 sampai 33 adalah nama kelas yang akan dibuat yaitu ApliBicycle. Dimana kelas ini merupakan program utama dalam java yang berarti memulai program dengan method main. Baris 34 adalah deklarasi Fungsi baru yang diberi nama sepeda yang berisi data (12, 13, 14). Baris 35 sampai 37 digunakan untuk menampilkan hasil dari method getCadance, getGear, dan getSpeed yang setelah selesai ditampilkan akan berpindah baris. Baris 38 menyatakan bahwa nilai method Cadence diubah menjadi 19. Baris 39 digunakan untuk menampilkan method getCadence yang telah diubah sebelumya.
C.   TUGAS
1.      Buat program tentang kelas orang dan jenisnya.
Program :
class Orang{
public int usia;
public int tinggi;
public int berat;
public Orang (int startUsia, int startTinggi, int startBerat){
usia = startUsia;
tinggi = startTinggi;
berat = startBerat;
}
public void setUsia (int newValue){
usia = newValue;
}
public void setTinggi(int newValue){
tinggi = newValue;
}
public void setBerat(int newValue){
berat = newValue;
}
public int getUsia(){
     return usia;
}
public int getTinggi(){
     return tinggi;
}
public int getBerat(){
     return berat;
}
}
public class ApliOrang{
public static void main (String args[]){
     Orang people = new Orang (18,174,65);
     System.out.println(“Usia: “+people.getUsia());
     System.out.println(“Tinggi: “+people.getTinggi());
     System.out.println(“Berat: “+people.getBerat());
     people.setUsia(19);
     System.out.println(“Usia: “+people.getUsia());
     }
}
Hasil output program
2.      Tugas dari dosen pengampu praktikum.
Tidak ada tugas dari dosen pengampu praktikum
D.   KESIMPULAN
Sebuah cirri khas program java menciptakan banyak obyek sperti kita ketahui, berinteraksi dengan meminta method melalui interksi obyek-obyek tersebut, sebuah program dapat membawa macam-macam tugas, seperti implementasi GUI, menjalankan animasi, atau mengirim atau menerima informasi melalui jaringan. Sekali sebuah obyek menyelesaikan sebuah pekerjaan untuk apa obyek tersebut dibuat, sumber dayanya didaur ulang untuk digunakan oleh obyek lain.
Sudah kita ketahui saat kita menciptakan sebuah obeyk dari sebuah kelas, maka cetakan kelas tersebut akan ada di dalam obyek tersebut.
1)      Deklarasi : semua deklarasi variable yang mngasosiasikan nama variable degan sebuah tipe dari obyek.
2)      Instansiasi : kata kunci new dalah operator java menciptakan obyek.
3)      Inisialisasi : operator new diikuti oleh pemanggilan konstruktor, yang mana menginisialisasi obyek baru
E.    LISTING
Terlampir.
Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s