Laporan OOP 2

16
LAPORAN PEMOGRAMAN BERBASIS OBJEK METODE DAN KONSTRUKTOR Nama : Syarif Hidayatullah NIM : 3.34.12.0.21 No.Job : 2 Kelas : IK 2 A TEKNIK INFORMATIKA

Transcript of Laporan OOP 2

LAPORAN

PEMOGRAMAN BERBASIS OBJEK

METODE DAN KONSTRUKTOR

Nama : Syarif Hidayatullah

NIM : 3.34.12.0.21

No.Job : 2

Kelas : IK 2 A

TEKNIK INFORMATIKA

TEKNIK ELEKTRO

POLITEKNIK NEGERI SEMARANG

TAHUN AJARAN 2013/2014

BAB 2

METODE DAN KONSTRUKTOR

I. Tujuan Instruksi KhususSetelah Meyelesaikan praktek ini mahasiswa dapat :

1. Menjelaskan pengertian metode,konstruktor,parameter

dan argument.

2. Mahasiswa dapat membuat program menggunakan metode

dengan parameter dan argumen

3. Mahasiswa dapat membuat program dengan menggunakan

konstruktor.

II. Persyaratan /Kebutuhan Sistem KomputerPersyaratan / kebutuhan sistem untuk menjalankan programjava adalah sebagai berikut :

1. Processor P-II atau yang lebih tinggi,2. RAM minimal 32 Mbyte3. Free space hardisk minimal 200 Mbyte,4. Mouse (Serial/PS2)5. Sistem Operasi:

a. Minimal Windows 98 (disarankan versiWindows yang lebih tinggi),

b. Linux

III. Dasar Teori

3.3.1 Membuat metode dengan parameter dan argumen

Parameter adalah sebuah variable yang didefinisikan oleh

metode yang menerima sebuah nilai. Sedangkan Argumen

adalah sebuah nilai yang dilewatkan ke metode ketika

metode dipanggil.

Bentuk umum dari sintaks metode dengan parameter adalah

sebagai berikut:

Nama metode(parameter)

{

// kode program

}

3.3.2 Konstruktor

Konstruktor merupakan sebuah fungsi (metode) yang

digunakan untuk menginisialisasikan suatu objek baru.

Fungsi ini dijalankan secara otomatis pada saat kelas

diciptakan, dengan nama yang sama dengan kelasnya, dan

tidak mengembalikan nilai, tetapi tidak menggunakan

fungsi void. Konstruktor dipanggil ketika suatu objek

dibuat berdasarkan kelasnya. Dari bentuk pendeklarasian,

konstruktor dapat dibedakan menjadi dua, yaitu:

Konstruktor implicit: didefinisikan oleh Java, dan

disebut: default constructor

Konstruktor eksplisit: ditulis oleh programmer.

Dari penggunaan parameter konstruktor ada dua jenis:

Konstruktor dengan parameter

Konstruktor tanpa parameter

Seperti kita ketahui, ketika kita mendeklarasikan sebuah

objek, kita menggunakan bentuk umum sebagai berikut:

Namakelas var = new namakelas( );

Parentheses ( ) diperlukan sesudah nama kelas,

sesungguhnya menunjukan bahwa konstruktor sedang

dipanggil. Sehingga statemen berikut ini

persegi persegipanjang = new persegi ( );

new persegi( ) adalah sedang memanggil konstruktor

persegi( ). Jika kita tidak mendefinisikan sebuah

konstruktor secara eksplisit untuk sebuah kelas, maka

Java membuat sebuah default construktor untuk kelas tersebut.

Hal inilah yang membuat mengapa program yang terdahulu

‘program pertama class NonOOP’ yang tidak mendefinisikan

konstruktor secara eksplisit tetap berjalan. Default

konstruktor secara otomatis menginisialisasi semua instance

variables bernilai nol. Namun demikian default konstruktor

hanya cocok untuk kelas-kelas yang sederhana.

Konstruktor tanpa parameter

Konstruktor ini digunakan jika objeknya mempunyai

dimensi/ukuran yang sama.

Konstruktor menggunakan parameter

Ketika metode konstruksi Man() dalam contoh di atas

diinisialisasi sebuah Objek, hal ini sangat tidak

bermanfaat, karena semua Man mempunyai dimensi yang sama.

Bagaimana caranya jika obyeknya mempunyai dimensi yang

berbeda-beda? Solusinya adalah dengan menerapkan

parameter ke konstuktor. Parameter ini merupakan variable

lokal yang digunakan pada konstruktor dan dapat

menggunakan nama yang sama dengan instance variable,

tetapi biasanya lebih mudah menggunakan nama yang

berbeda. Jika menggunakan nama yang sama maka variable

lokal akan menyembunyikan ’hide’ instance variable,

dan hal ini dapat menyebabkan terjadinya collision antara

instance variable dengan variable lokal. Untuk mengatasi

hal ini maka dapat menggunakan kata kunci this.

IV. Langkah KerjaJalankan Jcreator , buat file baru java dan ketikankode program berikut:

1. Buat program menggunakan metode dan parameter

//SYARIF HIDAYATULLAH IK A 3.34.12.0.21 DENGAN MENGGUNAKAN METODE DAN PARAMETERclass Lanang{ //class gawe nggawe objek tmplate//instance variabel

String Asmi;int gapok;int masagawe;

//metode njekuk nilaiint hitung_gaji(){

return gapok*masagawe;

}//Sets dimension Lanangvoid setDim(String am,int g, int mg){

Asmi=am;gapok=g;masagawe=mg;

}}class KaryawanMetodeParameter{

public static void main(String args []){

Lanang KaryawanKu = new Lanang();//nggawe objek singasli

Lanang KaryawanMu = new Lanang();//nggawe objek singasli

double gaji;//nilai instanxe variabel-1//penentapan nilai pertamaSystem.out.println("\t\t\tSyarif Hidayatullah");KaryawanKu.setDim("Andi",1000,10);gaji=KaryawanKu.hitung_gaji();System.out.println("Karyawan Ku\

t :"+KaryawanKu.Asmi);System.out.println("Gajinya\t\t :"+gaji);//nilai instanxe variabel-2KaryawanMu.setDim("Budi",2000,10);gaji=KaryawanMu.hitung_gaji();System.out.println("Karyawan Mu\

t :"+KaryawanMu.Asmi);System.out.println("Gajinya\t\t :"+gaji);

}}

Gambar : Output Langkah Kerja 1

2. Sebagai contoh dibaawah ini diberikan sebuahprogram menggunakan konstruktor tanpa parameter.

class Lanang

{

String Asma;

int gapok;

int masagawe;

//konstruktor tanpa parameter

Lanang()

{

System.out.println("Konstruksi dari Lanang");

Asma="Andi";

gapok=1000;

masagawe=10;

}

double hitung_gaji()

{

return gapok*masagawe;

}

}

class KonstruktorKu

{

public static void main(String[]args)

{

Lanang KaryawanKu= new Lanang();

Lanang KaryawanMu= new Lanang();

double gaji;

gaji = KaryawanKu.hitung_gaji();

System.out.println("Volume is\t" +gaji);

gaji= KaryawanMu.hitung_gaji();

System.out.println("Volume is\t"+gaji);

System.out.println("\n\t\t\tSyarif Hidayatullah");

}

}

3. Buat Penerapan parameter ke konstruktor

class Lanang{

String Asma;int gapok;int masagawe;Lanang(String am,int g, int mg) //Konstruktur Lanang{

Asma=am;gapok=g;masagawe=mg;

}

//metode untuk menghitung gaji lan me returndouble hitung_gaji(){

return gapok*masagawe;}}class KonstruktorParameter{

public static void main(String[]args){

//deklarasi ,alokasi dan inisialisasi objekLanang KaryawanKu = new Lanang("Andi",1000,10);Lanang KaryawanMu = new Lanang("Anjar",2000,10);double gaji;

//ambil gaji dari KaryawanKugaji = KaryawanKu.hitung_gaji();System.out.println("Gaji Karyawanmu :"+gaji);System.out.println("\nSyarif Hidayatullah");

}}

V. Pertanyaan1. Jelaskan pengertian metode,konstruktor,parameter dan

argumen.

Jawab :Metode merupakan bagian dari kode program yang dibuatuntuk melaksanakan tugas/fungsitertentu. Suatu metode adadua yaitu void return value

Konstruktor merupakan sebuah fungsi (metode) yangdigunakan untuk menginisialisasikansuatu objek baru.Fungsi ini dijalankan secara otomatis pada saat kelasdiciptakan, dengannama yang sama dengan kelasnya, dantidak mengembalikan nilai, tetapi tidak menggunakanfungsivoid. Konstruktor dipanggil ketika sutau objek dibuatberdasarkan kelasnya.Argumen adalah sebuah nilai yang dilewatkan ke metode ketika metode dipanggil.

2. Sebutkan jenis-jenis konstruktor dan berikan contoh

pemakaian dalam program

Jawab :

a. Konstruktor tanpa parameter

class persegikonstruktor{

int p,l;//class : konstruktor tanpa parameterpersegikonstruktor(){

p=15;l=5;

}int hitungluas(){return p*l;}

}class persegipanjangkonstruktor1{

public static void main (String args[])

{persegikonstruktor

persegipanjang1 = new persegikonstruktor();

System.out.println("Luas = "+persegipanjang1.hitungluas());

}}

b. Konstruktor dengan parameter

class persegikonstruktor{

int p,l;//menggunakan parameterpersegikonstruktor(int panjang,int lebar){

p=panjang;l=lebar;

}int hitungluas(){

return p*l;}

}class persegipanjangkonstruktor1{

public static void main(String args[]){

persegikonstruktor persegipanjang1= new persegikonstruktor(15,5);

System.out.println("Luas : "+persegipanjang1.hitungluas());

}}

3. Buat program menggunakan konstruktor tanpa parameter

untuk menghitung rata-rata BBM yang digunakan oleh

kendaraan dalam waktu 1 minggu, jika per hari

menghabiskan 3 lt kecuali untuk hari sabtu dan minggu

menghabiskan 5 lt.

Jawab :

class BBM

{

double

senin,selasa,rabu,kamis,jumat,sabtu,minggu;

double jumlahminggu;

//konstruktor tanpa parameter

BBM()

{

senin=3;selasa=3;rabu=3;kamis=3;jumat=3;sabtu=5;ming

gu=5;jumlahminggu=7;

}

double hitung_rata()

{

return

(senin+selasa+rabu+kamis+jumat+sabtu+minggu)/jumlahm

inggu;

}

}

class KonstruktorBBM

{

public static void main(String[]args)

{

BBM rata = new BBM();

double ratanya;

ratanya = rata.hitung_rata();

System.out.println("\t\t\t\t\t\t\t\t\t\t\

tMenghitung rata rata Konsumsi BBM\n\t\t\t\t\t\t\t\

t\t\t\t--------------------------------");

System.out.println("Berapakah rata rata

BBM yang digunakan oleh kendaraan dalam waktu 1

minggu, jika per hari menghabiskan 3 lt kecuali

untuk hari sabtu dan minggu menghabiskan 5 lt.\n");

System.out.println("Jawab :");

System.out.println(ratanya+" lt digunakan

dalam seminggu (rata rata)");

System.out.println("\n\t\t\tSyarif

Hidayatullah");

}

}

4. Untuk kasus yang sama jika jenis BBM-nya adalah:

Bensin

Solar

biodiesel

Jawab :

import java.io.*;

import java.util.*;

class BBM

{

//Solusi Berikut untuk kasus nomor 3 dan 4

//contoh metode bertipe static

static String nama;

static double BBM;

static double liter;

//Static metode pengembalian nilai

static double bensin()

{

return (liter*6500);

}

static double solar()

{

return (liter*5500);

}

BBM ()//tanpa paramter

{

nama="1 Minggu";

liter = 25;

}

}

class BBMtanpaParameter

{

public static void main(String[] args)throws

IOException

{

//tanpa parameter

BBM Pertama = new BBM();

BBM Kedua = new BBM();

BBM Ketiga = new BBM();

double hasil1=Pertama.bensin()/7;

System.out.println("\t\t\tManajemen BBM

Anda");

System.out.println("BBM Bensin");

System.out.println("Konsumsi :"+hasil1);

double hasil2=Kedua.solar()/7;

System.out.println("\nBBM Solar");

System.out.println("Konsumsi :"+hasil2);

double hasil3=Ketiga.solar()/7;

System.out.println("\nBBM Biodiesel");

System.out.println("Konsumsi :"+hasil3);

System.out.println("\nSyarif

Hidayatullah");

}

}

VI. KesimpulanPemrograman Berorientasi Objek (PBO) atau Object OrientedProgramming (OOP) merupakan inti (core) dari bahasa Java,

yang bukan bersifat opsional. Konstruksi dari pemrogramanJava selalu berbasis pada OOP. OOP ini merupakan sebuahteknik pemrograman yang bertujuan untuk mengurangikompleksitas suatu program, agar lebih sederhana danmudah.Dalam OOP terdapat konstruksi yang meliputi :Identifikasi,klasifikasi,objek dan kelas,enkapulasi,inheritance , serta polymorphism