0 penilaian0% menganggap dokumen ini bermanfaat (0 suara)
9 tayangan19 halaman
1. Mahasiswa membuat program input-output menggunakan class dan method untuk menginput nilai mata kuliah dari user dan menampilkan hasilnya.
2. Program menghitung luas persegi dengan menerima input sisi persegi dari user dan menampilkan hasil perhitungannya.
3. Program mendemonstrasikan overloading method dengan mendefinisikan beberapa method dengan nama yang sama namun parameter yang berbeda untuk menjumlahkan bilangan bulat dan riil.
1. Mahasiswa membuat program input-output menggunakan class dan method untuk menginput nilai mata kuliah dari user dan menampilkan hasilnya.
2. Program menghitung luas persegi dengan menerima input sisi persegi dari user dan menampilkan hasil perhitungannya.
3. Program mendemonstrasikan overloading method dengan mendefinisikan beberapa method dengan nama yang sama namun parameter yang berbeda untuk menjumlahkan bilangan bulat dan riil.
1. Mahasiswa membuat program input-output menggunakan class dan method untuk menginput nilai mata kuliah dari user dan menampilkan hasilnya.
2. Program menghitung luas persegi dengan menerima input sisi persegi dari user dan menampilkan hasil perhitungannya.
3. Program mendemonstrasikan overloading method dengan mendefinisikan beberapa method dengan nama yang sama namun parameter yang berbeda untuk menjumlahkan bilangan bulat dan riil.
Disusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T., M.OM !sisten Praktikum" #uth $ma %ebrita Muhamma& !ri'in Oleh" Septa Dwi Maulidina 1105!0"5# S1 PTI $011 %&&e'in( E UNI)ERSITAS NEGERI MALANG *AKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO S1 PENDIDIKAN TEKNIK IN*ORMATIKA O+t%,e'- $01$ (!PO#!) $ * +P$),$)!(!) D!S!# P$M#O,#!M!) -!.! //+ !.T0-0!) 1. Mahasiswa mam2u membuat 3lass sen&iri *. Mahasiswa mam2u men&eklarasikan atribut metho& 2a&a 3lass 4. Mahasiswa mam2u menera2kan o5erloa&e& metho& B. D!S!# T$O#/ a. /la00 6lass a&alah suatu 'rame yang meru2akan &e'inisi yang memuat &ata &an meto& 2engolah &ata. Di&alam -a5a kita ti&ak bisa sembarangan membuat, men3i2takan atau mewuju&kan suatu obje3t tan2a &i&asarkan 2a&a konse273etakan73lass. Oleh karena itu -a5a a&alah bahasa 2emrograman yang murni berorientasi obje3t atau &engan kata lain semua 2ekerjaan yang &ikerjakan menggunakan bahasa -a5a harus &ilakukan &i&alam 3lass. ,. O,1e2t Meru2akan sekum2ulan so'tware yang ter&iri &ari 5ariable &an metho&8metho& yang saling terkait. Dimana obje3t saling berinteraksi &engan saling memanggil meto&e &ari satu obje3t ke obje3t lainnya. 2. Att'i,ute d. S2%%pe )a'ia,le Menentukan sebera2a luas 5ariable &a2at &iakses . #uang lingku2 atau s3oo2e suatu 5ariable meru2akan 2enem2atan lokasi &imana 5ariable tersebut &i&eklarasikan &an &a2at berlaku. e. O3e'l%adin( Met4%d0 Memebuat metho& yang sama namun &a2at memiliki 'ungsi yang berbe&a . &. Input5Output /n2ut &an out2ut &alam ja5a meru2akan system &iaman kita bisa memasukkan in2utan nama &engan menggunakan tambahan im2ort.ja5a.io9:. 6. (!T/H!) 1. (atihan 1 a. Tulis 3lass berikut &an sim2an &engan nama Mahasiswa.ja5a b. om2ilasi &an jalankan 2rogram tersebut public class Mahasiswa{ // mendefinisikan class mahasiswa public String nama; public int angkatan; public String asal; public Mahasiswa(){ nama = "Ani"; angkatan = 2!; asal = "Magelang"; " public #$id ubah(String nm% int ak% String as){ nama = nm; angkatan = ak; asal = as; " public #$id cetak(){ S&stem'$ut'println("nama ( ")nama); S&stem'$ut'println("angkatan ( ")angkatan); S&stem'$ut'println("asal ( ")asal); " " 3. Print S3reen &. Tulis 2rogram berikut , sim2an &engan nama TestMahasiswa.ja5a 2a&a 'ol&er yang sama &engan 3lass Mahasiswa &iatas. e. 6om2ilasi &an jalankan '. Ou2ut 2rogram &iatas a&alah g. Buat &ua obje3t lagi &engan nama MahasiswaPT/ &an MahasiswaPT$ h. 0bah &ata ke&ua obje3t tersebut i. Panggil 'ungsi 3etak untuk ke&ua objek tersebut j. Program test yang telah &ire5isi k. eluaran 2rogram tersebut public class *estMahasiswa{ public static #$id main(String+,sand&){ Mahasiswa M-S = new Mahasiswa(); Mahasiswa .*/ = new Mahasiswa(); Mahasiswa .*0 = new Mahasiswa(); S&stem'$ut'println("1n/203*/*AS A4A5 ( "); M-S'cetak(); M-S'ubah("2ani"%2!%"Madiun"); .*/'ubah("2hiena"%2!!%"Malang"); .*0'ubah("2imas"%2!2%"Malang"); S&stem'$ut'println("1n/203*/*AS A6-/7 ( "); M-S'cetak(); .*/'cetak(); .*0'cetak(); " " *. (atihan a. Tulis &an sim2an 2rogram berikut /8Septa 2wi Maulidina !!9::;:<9= S! .*/0 2!! 8/ class 5ingkup{ //#ariabel instan String sifat = "Marah"; //met$de #$id inf$5ingkup(){ String sifat = "Malu"; S&stem'$ut'println("sifat pada meth$d ( ")sifat); S&stem'$ut'println("Sifat Milik 6elas ( ")this'sifat); " " b. Tulis &an sim2an 2rogram berikut public class *est5ingkup{ public static #$id main(String+,sand&){ 5ingkup #ar> = new 5ingkup(); #ar>'inf$5ingkup(); " " 3. 6om2ilasi Test(ingku2.ja5a &. !mati 'ol&er 2enyim2anan &ata, 3lass yang terbentuk a&alah Ter&a2at 'ile baru ber8ektensi ;.3lass+ &ari ke&ua 'ile ;.ja5a+ yang ta&inya kita buat yaitu Test(ingku2.3lass &an (ingku2.3lass e. -alankan 2rogram tersebut, maka out2ut 2rogram a&alah '. %ungsi &ari kata kun3i t4i0 a&alah &igunakan 2a&a 2embuatan 3lass &an menyatakan objek sekarang. !gar ti&ak a&a 5ariabel yang sama 4. (atihan a. Tulis &an sim2an 2rogram berikut /8Septa 2wi Maulidina !!9::;:<9= S! .*/0 2!! 8/ class Sc$$pe{ //#ariabel instan int angka = 2; //Met$de #$id inf$Sc$$pe(){ int angka! = !2; S&stem'$ut'println("angka di meth$d ( ")angka!); S&stem'$ut'println("angka di kelas ( ")this'angka); int m$dulus = angka ? angka!; S&stem'$ut'println("sisa hasil ( ")m$dulus); fl$at bagi = angka / angka!; S&stem'$ut'println("hasil bagi ( ")bagi); " " ,. Tulis &an sim2an 2rogram berikut public class *estSc$$pe{ public static #$id main(String+,sand&){ Sc$$pe #ar>=new Sc$$pe(); #ar>'inf$Sc$$pe(); " " 2. 6om2ilasi S2%%pe.1a3a d. !mati 'ol&er 2enyim2anan &ata, 3lass yang terbentuk Ter&a2at 'ile baru ber8ektensi ;.3lass+ &ari ke&ua 'ile ;.ja5a+ yang ta&inya kita buat yaitu TestS3oo2e.3lass &an S3oo2e.3lass e. -alankan 2rogram tersebut, maka out2ut 2rogram a&alah &. Menga2a angka yang ter&a2at 2a&a metho& &an 3lass &a2at &ibagi < arena 5ariable angka bersi'at global , sehingga 2a&a metho& &i2roses &engan angka1 sebagai 5ariable lokal (. Bagaimana 3ara menam2ilkan hasil bagi = 1.> < ?isi 5ariable teta2@ Dalam 2rogram ter&a2at 3o&e new- new ber'ungsi untuk menam2ilkan &ata yang ter&a2at 2a&a S3oo2e.ja5a, saat 3lass TestS3oo2e.ja5a &i2anggil. Se&angkan untuk menam2ilkan hasil bagi = 1.A ?&imana isi 5ariabel teta2 a&alah menambahkan ty2e &ata float sebelum 'ormula bagi@, !gar hasil &a2at menja&i nilai yang su&ah &ibulatkan maka kita harus menyisi2kan ;im2ort ja5a.util.9: ; &an ganti 2a&a S.o.2 hasil bagi menja&i ; System.out.2rint'?Bhasil bagi "C.1' CnB,bagi@: + !ngka yang ter&a2at 2a&a 3lass su&ah &i akses oleh metho& &engan menggunakan kata kun3i this &an atau nama 5ariable yang a&a &i &alam 3lass ti&ak sama &engan yang a&a &i metho&. -ika ingin agar hasil bagi = 1.> atau 5ariabel teta2 maka ubahlah nama 5ariable &i metho& menja&i ;angka+ &an hilangkan kata kun3i this. D. (atihan a. Tulis &an sim2an 2rogram berikut /8Septa 2wi Maulidina !!9::;:<9= S! .*/0 2!! 8/ imp$rt @a#a'i$'8; public class 7ep$rt{ public static String baca/nputan(){ String baca=""; /nputStream7eader input = new /nputStream7eader (S&stem'in); Auffered7eader buf = new Auffered7eader (input); tr&{ baca = buf'read5ine(); "catch( /B0>cepti$n e ){ S&stem'$ut'println("0rr$rC"); " return baca; " public static #$id main(String+,sand&){ //digunakan untuk menangkap e>cepti$n' String name=""; int nilaiMatematika; int nilaiDisika; int nilai6imia; S&stem'$ut'print("Masukkan nama ( "); name=baca/nputan(); S&stem'$ut'print("masukkan 3ilai Matematika ( "); nilaiMatematika=/nteger'parse/nt(baca/nputan()); S&stem'$ut'print("Masukkan nilai Disika ( "); nilaiDisika=/nteger'parse/nt(baca/nputan()); S&stem'$ut'print("masukkan 3ilai 6imia ( "); nilai6imia=/nteger'parse/nt(baca/nputan()); S&stem'$ut'print("1nEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE E1n"); S&stem'$ut'println("")name); S&stem'$ut'println("3ilai 6amu adalah"); S&stem'$ut'println("Matematika")nilaiMatematika); S&stem'$ut'println("Disika")nilaiDisika); S&stem'$ut'println("kimia")nilai6imia); " " b. Out2ut 2rogram &iatas a&alah " E. (atihan a. Tulis &an sim2an 2rogram berikut imp$rt @a#a'i$'8; public class .ersegi{ public static #$id main(String+,sand&){ Auffered7eader data = new Auffered7eader(new /nputStream7eader(S&stem'in)); String > =""; int hitung5uas=; S&stem'$ut'println("EE 5uas .ersegi EE"); S&stem'$ut'println("Masukkan 3ilai Sisi ( "); tr&{ > = data'read5ine(); int angka = /nteger'parse/nt(>); hitung5uas = angka 8 angka; " catch (0>cepti$n e){ S&stem'$ut'println("0rr$r"); " S&stem'$ut'println("5uas .ersegi dengan sisi")>)"adalah")hitung5uas); " " b. Out2ut 2rogram &iatas a&alah D.T0,!S P#!T/0M ? S6#/PT D!) H!S/(@ 1. Buatlah 2rogram o5erloa&ing &engan 2otongan 2rogram 2a&a mo&ul a. S3ri2t //3ama ( Septa 2wi Maulidina //3/M ( !!9::;:<9= public class B#erl$ading{ //nama class static int tambah(int a% int b){ return a)b; " static d$uble tambah (d$uble a% d$uble b){ return a)b; " static int tambah( int a% int b% int c){ return a)b)c; " public static #$id main(String+,args){ //deklarasi #ariabel int a=:; int b=;; int c ==; d$uble d ='9; S&stem'$ut'println("!' ")tambah(a%b)); //menampilkan hasil pen@umlahan S&stem'$ut'println("2' a(:))b(;) = ")tambah(a%b));//menampilkan nilai #ariabel a dan nilai #ariabel b dengan hasil pen@umlahan dari nilai a dan b S&stem'$ut'println(":' " )tambah (a%b%c));//menampilkan hasil pen@umlahan semua S&stem'$ut'println(";' ")(tambah(a%b%c)Ed));//menampilkan hasil pen@umlahan dan pengurangan " " b. Print S3reen 3. Penjelasan Publi3 3lass O5erloa&ing meru2akan nama 3lass Baris berikutnya meru2akan baris &imana menjumlahkan a &an b &engan ti2e integer , integer meru2akan ti2e &ata bilangan bulat Baris berikutnya meru2akan baris &imana menjumlahkan a &an b &engan ti2e &ata &ouble , &ouble meru2akan ti2e &ata bilangan riil. ?biasanya &engan &e'ault koma atau 2e3ahan atau &e3imal &iangga2 &ouble@ Baris berikutnya meru2akan baris &engan ti2e integer , yang &igunakan untuk menjumlahkan a , b &an 3. Se&angkan 3o&e &alam 2ubli3 stati3 5oi& main , ter&a2at a, b, &an 3 yang berti2e &ata integer &engan nilai 4, D, &an > . Se&angkan 5ariable &engan ti2e &ouble bernilai A,E. Baris yang ter&iri &ari system.out.2rintln 1 &igunakan untuk menjumlahkan nilai a &an b , se&angkan untuk baris selanjutnya juga untuk menjumlahkan nilai a &an b. Baris ke 4 menjumlahkan nilai a, b , &an 3 . Se&angkan baris terakhir &igunakan untuk menjumlahkan a , b , &an 3 kemu&ian &ikurangi &engan nilai &. *. Program konse2 in2ut7out2ut a. S3ri2t public class A$$lean { public static #$id main(String+, args) { b$$lean b = true; S&stem'$ut'println("3ilai b = ")b); S&stem'$ut'println("Statement Awal dieksekusi"); if (b = false) b = true; S&stem'$ut'println("3ilai b = ")b); S&stem'$ut'println("Statement Akhir dieksekusi"); if (b=(2 F= G)) b = true; S&stem'$ut'println("2 F= G mengembalikan nilai ")b); if (b=(: H I)) b = true; S&stem'$ut'println(": H I mengembalikan nilai ")b); if (b=(I F= I)) b = true; S&stem'$ut'println("I F= I mengembalikan nilai ")b); " " 3. Print S3reen 4. Program konse2 in2ut7out2ut a. S3ri2t imp$rt @a#a'i$'8; public class *ugas*iga{ public static String baca/nputan(){ String baca=""; /nputStream7eader input = new /nputStream7eader (S&stem'in); Auffered7eader buf = new Auffered7eader (input); tr&{ baca = buf'read5ine(); "catch( /B0>cepti$n e ){ S&stem'$ut'println("0rr$rC"); " return baca; " public static #$id main(String+,args){ //digunakan untuk menangkap e>cepti$n String name=""%karakter=""; S&stem'$ut'print(".lease /nput J$ur 3ame ( "); name=baca/nputan(); S&stem'$ut'print(".lease /nput J$ur Kharacter ( "); karakter=baca/nputan(); S&stem'$ut'println("-ell$'''M& 3ame is ")name); S&stem'$ut'println("/Lm a #er& ")karakter)" pers$n'"); " " b. Print S3reen 3. Penjelasan Baris im2ort ja5a.io.9: &igunakan untuk men&a2atkan in2utan Publi3 3lass TugasTiga meru2akan nama 3lass Baris selanjutnya &igunakan untuk memba3a in2utan &ari user. $. T0,!S #0M!H ? S6#/PT D!) H!S/(@ 1. Out2ut Segitiga a. S3ri2t public class *7!{ public static #$id main(String+, args){ int i ; int @ ; int k ; S&stem'$ut'println("Segitiga *erbalik"); f$r (i=;iF=<;i))) { S&stem'$ut'printf(" "); f$r (@=;@Fi;@))){ S&stem'$ut'printf(" "); " f$r (k=<;kHi;kEE){ S&stem'$ut'printf("8 "); " S&stem'$ut'println(""); " S&stem'$ut'println("Segitiga Sisi"); //pr$ses pembentukan segitiga bintang f$r (i=;iF=<;i))) { S&stem'$ut'printf(" "); f$r (@=;@Fi;@))){ S&stem'$ut'printf("8"); " S&stem'$ut'println(" "); " S&stem'$ut'println("1n"); " " b. Print S3reen 3. Penjelasan Baris 2ertama 3o&e 2ubli3 3lass #a2or meru2akan nama 3lass . 6lass menggunakan a33ess mo&i'ier 2ubli3 , yang berarti 3lass mem2unyai akses bebas ke 3lass lain &ari 2a3kage yang lain 2ula. Baris berikutnya F meru2akan awal blok . Baris selanjutnya 3o&e stati3 5oi& main?String GHargs@ , meru2akan nama suatu metho& &alam 3lass #a2or sebagai metho& utama . .ariabel mat , bi , bingg mem2unyai ti2e &ata integer. Pa&a baris selanjutnya menjumlahkan nilai mat , bi , &an bingg &engan o2erasi 2enjumlahan &an kemu&ian membaginya &engan 4 , &imana &i&a2at hasil I4 sebagai nilai rata8rata. Baris yang ter&iri &ari J meru2akan akhir &ari blok metho& main sebuah 3lass. *. /n2utan angka &an huru' a. S3ri2t /8 3ama ( Septa 2wi Maulidina !!9::;:<9= 8/ imp$rt @a#a'i$'8;//digunakan untuk pengiputan data dengan menggunakan fungsi /nputStream7eader dan Auffered 7eader public class *72{ public static String inputan(){ String baca=" "; /nputStream7eader input = new /nputStream7eader(S&stem'in); Auffered7eader buf = new Auffered7eader (input); tr&{ baca=buf'read5ine(); "catch (/B0>cepti$n e) { S&stem'$ut'println("0rr$r"); " return baca; " public static #$id main(String+, args){ String kalimat=" "; int b; //deklarasi #ariabel b S&stem'$ut'print("/nput string( "); //input string kalimat=inputan(); //data inputan dari user S&stem'$ut'print("/nput angka( "); //input @umlah angka b=/nteger'parse/nt(inputan()); //nilai b dari inputan % integer f$r(int a=!;aF=b;a))) //perulangan untuk a dari ! sampai b' S&stem'$ut'println(" " ) b ) kalimat); //$utput hasil " " b. Print S3reen 3. Penjelasan imp$rt @a#a'i$'8; % Digunakan untuk 2engi2utan &ata &engan menggunakan 'ungsi /n2utStream#ea&er &an Bu''ere& #ea&er Baris 2ertama 3o&e 2ubli3 3lass T#* meru2akan nama 3lass . 6lass menggunakan a33ess mo&i'ier 2ubli3 , yang berarti 3lass mem2unyai akses bebas ke 3lass lain &ari 2a3kage yang lain 2ula. Baris berikutnya F meru2akan awal blok . Baris selanjutnya 3o&e 2ubli3 stati3 String in2utan?@F , &igunakan untuk memanggil 'ungsi string &alam in2utan &ari user Pa&a baris /n2utStream#ea&er?System.in@ , system.in ber'ungsi untuk memba3a in2utan &ari keyboar&. ba3a=bu'.rea&(ine?@ , rea&(ine &igunakan untuk mengambil in2ut &ari user. emu&ian ter&a2at 2erulangan 'or untuk menam2ilkan sebanyak in2utan angka yang kita masukkan. 4. !bsensi siswa a. S3ri2t //3ama ( Septa 2wi M //!!9::;:<9= //S! .*/0 2!! imp$rt @a#a'util'8; imp$rt @a#a'i$'8; class *7: { public static #$id main(String+, args) { int i % @umlah= % @mlhsiswa=; // deklarasi untuk @umlah semua siswa dan @umlah siswa &ang tidak masuk int nt=; nt = @mlhsiswaE@umlah; String+, data; data=new String+:,; //nama siswa String+, data!; data!=new String+:,; //keteranga siswa &ang tidak masuk int+, data2; data2=new int+:,; int pilihan=; Auffered7eader reader = null; /nputStream7eader stream7eader = null; Scanner input=new Scanner(S&stem'in); Auffered7eader data/n = new Auffered7eader(new /nputStream7eader(S&stem'in)); stream7eader = new /nputStream7eader(S&stem'in); reader = new Auffered7eader(stream7eader); tr& { d$ { S&stem'$ut'println("!' Menambah siswa"); S&stem'$ut'println("2' Absensi siswa"); S&stem'$ut'println(":' 0>it"); S&stem'$ut'println("/nputkan Menu ( "); pilihan = /nteger'parse/nt(reader'read5ine()); switch(pilihan){ case !( S&stem'$ut'print(" /nput @umlah siswa ( "); //@umlah semua siswa @mlhsiswa=input'ne>t/nt(); S&stem'$ut'print(" /nput siswa &ang tidak masuk ( "); // input siswa &ang tidak masuk @umlah=input'ne>t/nt(); S&stem'$ut'println(" "); S&stem'$ut'println("*idak -adir dalam kelas"); f$r (i=!;iF=@umlah;i))) //perulangan u/ siswa &ang tidak masuk { S&stem'$ut'print(" "); S&stem'$ut'print(" /nput ntma Siswa = "); ///nput nama siswa &ang tidak masuk data+i,=data/n'read5ine(); S&stem'$ut'print(" 6eterangan = "); ///nput keterangan siswa &ang tidak masuk data!+i,=data/n'read5ine(); S&stem'$ut'print(" 5ama tidak masuk = "); ///nput @umlah hari siswa &ang tidak masuk data2+i,=input'ne>t/nt(); S&stem'$ut'println(""); " break; case 2( S&stem'$ut'println(" "); S&stem'$ut'println(" 2ata Siswa "); nt = @mlhsiswaE@umlah;//@umlah siswa E tidak hadir S&stem'$ut'println("Mumlah siswa tidak hadir = ")nt); S&stem'$ut'println(" "); S&stem'$ut'println("2ata Siswa *idak -adir"); S&stem'$ut'print(" "); f$r (i=!;iF=@umlah;i))) { S&stem'$ut'println("2ata 6e E ")i)""); S&stem'$ut'print(""); S&stem'$ut'println(" 3ama Siswa ( ")data+i,); S&stem'$ut'println(" 6eterangan siswa ( ")data!+i,); S&stem'$ut'println(" 5ama siswa tidak masuk ( ")data2+i, )" hari"); " S&stem'$ut'print("1n"); break; case :( S&stem'$ut'println("Anda akan keluar dari menu"); S&stem'e>it(!); break; default( S&stem'$ut'println("Menu /nputan salah"); break; " "while(true); "catch(/B0>cepti$n e) {e'printStack*race(); " " " b. Print S3reen %. $S/MP0(!) /la00- meru2akan suatu blue2rint atau 3etakan untuk men3i2takan suatu instant &ari obje3t. 3lass juga meru2akan gru2 suatu obje3t &engan kemiri2an attributes72ro2erties, beha5iour &an relasi ke obje3t lain. O,1e2t , instan3e &ari 3lass. -ika 3lass se3ara umum mere2resentasikan ?tem2late@ sebuah obje3t, sebuah instan3e a&alah re2resentasi nyata &ari 3lass itu sen&iri. Met4%d, meru2akan suatu o2erasi beru2a 'ungsi8'ungsi yang &a2at &ikerjakan oleh suatu obje3t. Metho& &i&e'inisikan 2a&a 3lass akan teta2i &i2anggil melalui obje3t. Se&angkan o5erloa& meru2akan kemam2uan &imana kita bisa memiliki lebih &ari 1 metho& &engan nama yang &alam suatu 3lass. ,.#$%$#$)S/ 7 D!%T!# P0ST!! http://fanjavaakhmad.wordpress.com/2010/09/06/tipe-data- java/ http://xahlee.info/java-a-day/instance_vs_class_memers.html http://cecendet.wordpress.com/2011/0!/12/metode-parameter- dan-kata-k"nci-this-pada-java #od"l %% &ava