P. 1
Kelas E1_Kelompok 4

Kelas E1_Kelompok 4

|Views: 50|Likes:
Published by syahidazein

More info:

Published by: syahidazein on May 18, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

11/12/2012

pdf

text

original

Pemrograman Java 2

[Type the document subtitle] Oleh : Zein Syahida
11520241002

Hardika Dwi H.
11520241004

Oktaviani F.K
11520241005

Hanum Rosidah
11520241010

Pemrograman 2 / Kelas E1

1

1. Apa yang dimaksud dengan kelas, konstruktor, atribut, dan method ? jelaskan dan beri contoh dalam program java ! a.Kelas Satu konsep fundamental pemrograman berorientasi objek. Kelas digunakan untuk membuat objek dan berperan sebagai tipe data dari objek, kelas merupakan sarana pengapsulan pengumpulan data dan kumpulan metodh yg mengoperasikan kumpulan data tersebut. Contoh = Public class contohClass{ b. Konstruktor Sebuah tipe khusus dari metodh yg digunakan untuk membuat dan menginisialisasi sebuah objek baru. Contoh = Public class ContohClass{ //konstruktor Public ContohClass(){ data = 100; } ContohClass(int data){ Ini.data = data; } } c. Atribut Data yang membedakan antara objek satu dengan yang lain. Contoh : Public class Atribut{ private String Nama; public boolean pernyataan = false; }

Semester 2

1

Pemrograman 2 / Kelas E1

2

d. Method Serangkaian kode program yg dikelompokan dalam satu nama. Metodh adalah bagian program yg menjelaskan tingkah laku daro objek yang akan diinstan. contoh : public class Main_sub1 { //main program public static void main(String[] args) { Print(); // memanggil method Print() } //method ini tidak mempunyai parameter static void Print() { System.out.println("Method Print Sukses Dipanggil!!!"); } } //end class Main_sub1 2. Apa yang dimaksud dengan accessor method, mutator method, overloading method dan overriding method ? jelaskan dan beri contoh dalam program java ! a. Accessor adalah metodh yang membaca nilai variable pada kelas, baik berupa instance maupun static dan juga mempunyai sebuah return value. contoh : public class Accessor { private String name; public String getName(){ return name; } } b. Mutator method adalah metodh yg dapat mengubah atau memberi nilai variable dalam kelas, baik itu berupa instan maupun static.

Semester 2

2

Pemrograman 2 / Kelas E1

3

contoh : public class StudentRecord { private String name; public void setName( String temp ){ name = temp; } } c. Overloading method adalah method yang memiliki nama yang sama, tetapi dengan signature yang berbeda dalam definisi class yang sama. contoh : class Lingkaran{ //membuat 3 method yang sama dengan berbeda parameter public buatLingkaran(int diameter){ … } public buatLingkaran(int diameter, int x, int y){ … } public buatLingkaran(int diameter, int x, int y, int warna, String namaLingkaran){ … }} d. Ovveriding Metodh adalah metodh yang sama, baik nama metodh maupun signature atau parameter yang diperlukan dalam sub class. contoh : class Ovveriding{ public void Info(){

Semester 2

3

Pemrograman 2 / Kelas E1

4

System.out.println(“ini class overriding”); } class Child extends Ovveriding { public void info() { System.out.println(“ini class child”); } 3. Apa yang dimaksud dengan modifier ? ada 10 keyword yang digunakan sebagai modifier dan dikelompokkan menjadi : Modifier Akses Public Menyatakan bahwa kelas/method/attribute tersebut dapat diakses oleh kelas lain dimanapun. Contoh : Package bangun; public class persegiPanjang{ Public int panjang; Public int lebar; Public int hitungLuas (){ Return Panjang * Lebar; } Public int hitungKeliling(){ Return ((2*Panjang)+(2*Lebar)); } } Protected Menyatakan bahwa kelas/method/attribute tersebut dapat diakses oleh kelas lain yang berada dalam satu package atau kelas lain tersebut merupakan turunannya. Contoh: Package bangun; Public class segitiga{ protected int Alas;

Semester 2

4

Pemrograman 2 / Kelas E1

5

protected int Tinggi; protected double hitungLuas(){ return0,5*(Alas*Tinggi); } }

Private Menyatakan bahwa kelas tersebut tidak dapat diakses sama sekali oleh kelas lain bahkan juga tidak dapat diturunkan.Berarti attribute-attribute yang private hanya dapat diakses oleh method-method dalam kelas yang sama, kelas lain masih dapat mengakses melalui method-method tersebut asal modifiernya public. Pertimbangan suatu attribute di deklarasikan private : 1.Bila kelas lain tak memerlukan attribute tersebut. 2.Melindungi suatu attribute dari kemungkinan nilainya diubah oleh method lain dari kelas lain. Package bangun; Public class bujurSangkar{ private int Sisi; private int hitungLuas() { return Sisi*Sisi; public static void main(String args [] ) { bujurSangkar y = new bujurSangkar(); y.Sisi = 10; System.out.print(“Luas Bujur Sangkar =”+y.hitungLuas()); } }

Modifier Final Menyatakan bahwa kelas tersebut tidak dapat diturunkan menjadi subkelas ( pewaris) Contoh : public class Coba{

Semester 2

5

Pemrograman 2 / Kelas E1

6

final int value=10; public static final int bandwith=6; static final String title=”manager”; public void chagevalue(){ value=12; } }

ModifierStatic Modifier static biasanya dipergunakan untuk membuat method atau variable yang menyatakan milik dari kelas, bukan milik instance (sehingga independen terhadap instance) . Beberapa hal yang dapat diberi modifier static : 1. Method 2. Variable 3. Initialization block (static initializer) 4. Inner class dalam kelas lain (bukan inner class dalam method) Beberapa hal yang tidak dapat diberi modifier static [ : 1. Konstruktor 2. Kelas 3. Interface 4. Inner class dalam method 5. Method dalam inner class 6. Instance variable (bila instance variable diberi modifier static, maka berubah menjadi static variable) 7. Local variable Contoh : public class Anisa{ public static void main (String args[]){

Semester 2

6

Pemrograman 2 / Kelas E1

7

int i=0; do { i++; System.out.println(i); if (i==5) break; } while (i<=9); } }

Modifier Abstract Abstract class adalah kelas murni (tanpa objek) dan tidak boleh memiliki objek ( tidak boleh ada instansiasi) serta method-method yang abstract harus disempurna-kan oleh kelas turunannya melalui override. Kelas seperti ini biasanya merupakan root suatu struktur kelas. Konsekuensi penggunaan sifat abstract : 1.Tidak dapat dibuat constructor yang abstract. 2.Tidak dapat dibuat method yang static dan abstract (kedua sifat saling kontradiktif). 3.Tidak diijinkan membuat method yang private dan abstract (kedua sifat ini juga saling Kontradiktif ) Contoh : public abstract claas kota{ String objek ; public abstract jalan ; } liburan.java class jogja { public jogja (String objek){ // constructor this.objek=objek; }

Semester 2

7

Pemrograman 2 / Kelas E1

8

public void jalan(){ System.out.println (“di jogja ada wisata candi” + this.objek); } } class liburan { public static void main (String args []){ jogja j= new jogja (“borobudur”); j.jalan(); // instansisasi objek } }

Modifier Synchronized Modifier synchronized berarti method harus memperoleh look di satu objek atau kelas sebelum dapat dieksekusi. Modifier synchronized untuk menspesifikasikan bahwa method adalah thread safe. Ini berarti hanya satu jalur eksekusi yang diizinkan di method synchronized pada satu waktu. Pada lingkungan multithread seperti Java, dimungkinkan lebih dari satu jalur eksekusi berjalan di kode yang sama. Modifier synchronized mengubah aturan ini dengan hanya mengizinkan satu pengaksesan thread tunggal pada satu saat, memaksa thread-thread lain menunggu giliran. Contoh : public class java{ public synchronized void show details(){ ………………} } Modifier Native Modifier native berarti method ditulis di bahasa selain bahasa Java. Seperti pada method abstract, badan method diganti atau diakhiri dengan titik koma (;). Modifier native untuk menspesifikasikan method dengan implementasi di bahasa lain. Modifier native menginformasikan ke kompilator Java bahwa

Semester 2

8

Pemrograman 2 / Kelas E1

9

implementasi method di file C/C++ eksternal. Hal ini menjadi alasan kenapa deklarasi method native terlihat berbeda dari pada method-method lain , yaitu tanpa badan method. Contoh : public class prompt { private native String gerLine (String prompt); public static void main (String args[]){ prompt p = new prompt() ; String input = p.getLine(“type a line :”); System.out.println (“user type : “+ input); } static { System.out.println (“prompt”); } } Modifier Storage transient Modifier transient mengacu ke objek dan nilai primitif di Java virtual machine. Modifier ini untuk menyatakan bahwa variabel tidak menjadi sasaran serialisasi. Contoh : public class nisa{ public transient int limit =20; public int b; ……………. }

volatile Modifier volatile mengacu ke objek dan nilai primitif yang dapat dimodifikasikan secara asinkron. Variabel-variabel ini diperlakukan secara spesial oleh kompilator untuk mengendalikan cara variabel-variabel itu diperbarui. Contoh :

Semester 2

9

Pemrograman 2 / Kelas E1

10

public class Okta{ private vortile boolean active; public void run(){ active =true; while (active){ } public void stop(){ active=false; } } } 4. Apa yang dimaksud dengan objek pada pemrograman oop di java ? jelaskan dan beri contoh objek dalam program java ! Yang dimaksud dengan objek pada pemrograman oop di java adalah suatu program yang di dalamnya memiliki enkapsulasi, abtraksi data, penurunan, dan polimorfime. contoh : abstract class seniman { seniman() { System.out.println("Seniman "); } seniman (int a) { System.out.println("Seniman dengan nilai "+a ); } abstract void berkesenian(); void tidur()System.out.println ("Zzzz..zzz.. "); } void makan() { System.out.println ("Nyam..nyam..."); }} class pelukis extends seniman { pelukis() { (int a) System.out.println("pelukis"); } void berkesenian() { System.out.println ("Tap..tap..tuk..tuk.."); } void berkesenian(int a){ } void tidur() { System.out.println ("Buzzz..nging..nging..brrr..!!"); } }

Semester 2

10

Pemrograman 2 / Kelas E1

1

class penyanyi extends seniman { void penyanyi() { System.out.println("penyanyi"); } void berkesenian () { super.makan(); System.out.println ("Tralala..trilili...!!!"); } void bergumam () { System.out.println ("Mmmm..mmmm.."); } static void suara() { System.out.println ("Dududu...dadada.."); }} class quizUtama{

public static void main(String[] args){ seniman ref; pelukis obj1 = new pelukis(); ref = obj1; obj1 <<" INI GAK DOSA" ref.berkesenian(); ref.makan(); ref.tidur(); kelas abstrak pake objek ref penyanyi obj2 = new penyanyi(); obj2.berkesenian(); obj2.bergumam(); penyanyi.suara(); turunan ya pake objek yg dideklarasiin di kelas itu obj2.tidur(); }}

5. Apa yang dimaksud dengan Immutable Objects dan Immutable Classes? jelaskan dan beri contoh dalam program java ! Immutable Object adalah suatu objek yang sudah tidak dapat diubah lagi. contohnya menggunakan final. contoh : final class kelas{ int I; void increment(){ i++; }; } Immutable Classes adalah suatu kelas yang dibuat tidak dapat dirubah lagi. contohnya yaitu kelas string.

Semester 2

1

Pemrograman 2 / Kelas E1

1

contoh : public final class FinalPersonClass { private final String name; private final int age; public FinalPersonClass(final String name, final int age) { super(); this.name = name; this.age = age; } public int getAge() { return age; } public String getName() { return name; } }

6. Apa yang dimaksud dengan keyword this dan super ? jelaskan dan beri contoh objek dalam program java ! Keyword this digunakan untuk mengakses variable instans dari masing-masing objek. Contoh : public class loopy2 { public int num; public loopy2() {} public loopy2(int num) { this.num = num; } public void setloopy2(int num) { this.num = num; } } } public void printOut() { for(int i=1; i<=this.num; i++) { System.out.println(+ i); for(int j=1; j<=i; j++) { System.out.println("0"); public int getloopy2() { return this.num;

Semester 2

1

Pemrograman 2 / Kelas E1

1

System.out.println("\n"); } } static void test(){ loopy2 lo2 = new loopy2(3); }} }

lo2.printOut(); public static void main(String args[]) { test();

7. Apa yang dimaksud dengan package ? jelaskan dan beri contoh programnya! Package adalah bendel atau pengelompokan kelas-kelas berdasarkan kesamaan atau kemiripan fungsi. contoh : package Contoh; import java.io.*; public static Package1{ public static void main(String[] args){ System.out.println(“Mari Belajar Package”) } } 8. Apa yang dimaksud dengan information hiding, encapsulation, inheritance, dan polymorphism ? jelaskan dan beri contoh programnya ! inheritance adalah (pewarisan) pewarisan pada pemrograman berorientasi objek merupakan suatu hubungan dua buah kelas atau lebih. information hiding adalah mengganti metode akses (modifier) dari public menjadi private. encapsulation adalah (pembungkusan) variable dalam sebuah objek yang terlindungi. contoh : public class PersegiPanjang{ private double panjang; // attribute yg di hide private double lebar; private double tinggi; panjang = 0; // attribute yg di hide // attribute yg di hide

public PersegiPanjang() {

Semester 2

1

Pemrograman 2 / Kelas E1

1

lebar = 0; } private double luas(double p, double l) { // di encap return p*l; } public void setPanjang(double panjang) { this.panjang = panjang; } public void setLebar(double lebar) { this.lebar = lebar; } public double getPanjang() { return panjang; } public double getLebar() { return lebar; } public double getLuas() { return luas(panjang, lebar); } } public class MainPersegiPanjang { public static void main(String[] srgs) { PersegiPanjang pp = new PersegiPanjang(); pp.setPanjang(10); pp.setLebar(20); System.out.println("Panjang : "+ pp.getPanjang()); System.out.println("Lebar : "+ pp.getLebar()); System.out.println("Luas : "+ pp.getLuas()); } }

Semester 2

1

Pemrograman 2 / Kelas E1

2

polymorphisme adalah (penyemaran) satu nama dapat digunakan untuk banyak tujuan yang berbeda namun berhubungan satu sama lain. contoh : class EkspresiWajah{ public String respons() { return("Perhatikan ekspresi wajah saya"); }} class Gembira extends EkspresiWajah{ public String respons() { return("ha ha ha.."); }} class Sedih extends EkspresiWajah{ public String respons() { return("hik hik ngeee ngeee ngeee.."); }} class Marah extends EkspresiWajah{ public String respons() { return("Hai kurang ajar..!"); }} class MainEkspresiWajah{ public static void main(String args[]) { EkspresiWajah objEkspresi = new EkspresiWajah(); Gembira objGembira = new Gembira(); Sedih objSedih = new Sedih(); Marah objMarah = new Marah(); EkspresiWajah[] arrEkspresi = new EkspresiWajah[4]; arrEkspresi[0] = objEkspresi; arrEkspresi[1] = objGembira; arrEkspresi[2] = objSedih; arrEkspresi[3] = objMarah; System.out.println("Ekspresi[0]: "+arrEkspresi[0].respons());

Semester 2

2

Pemrograman 2 / Kelas E1

3

System.out.println("Ekspresi[1]: "+arrEkspresi[1].respons()); System.out.println("Ekspresi[2]: "+arrEkspresi[2].respons()); System.out.println("Ekspresi[3]: "+arrEkspresi[3].respons()); }} 9. Apa yang dimaksud dengan kelas inner, kelas abstrct, dan interface ? jelaskan dan beri contoh programnya ! inner class adalah suatu class yang berada di dalam kelas yang lain. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class DemoJButtonInner extends JFrame { private JButton btn; public DemoJButtonInner (){ super("Demo JButton Inner Class"); Container c = getContentPane(); c.setLayout(new FlowLayout()); btn = new JButton("Button"); c.add(btn); // membuat event handler ButtonHandler handler = new ButtonHandler(); btn.addActionListener(handler); setSize(275, 100); show(); } public static void main(String args[]) { DemoJButtonInner app = new DemoJButtonInner(); app.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent we) { System.exit(0); } });

Semester 2

3

Pemrograman 2 / Kelas E1

4

} // kelas Inner untuk Event Handling pada button private class ButtonHandler implements ActionListener { public void actionPerformed(ActionEvent ae) { JOptionPane.showMessageDialog(null, "anda telah menekan" +ae.getActionCommand()+"\n" +"Handler button ini pakai kelas Inner"); } Abstract class adalah suatu kelas yang dinyatakan abstract, umumnya memiliki satu atau lebih abstract method. Inheritance adalah proses pewarisan attribute dan method dari satu kelas super kepada satu/lebih subkelas. Contoh : abstract class Hewan { protected String nama; protected int jumKaki; protected boolean bisaTerbang = false; public Hewan(String nama, int kaki, boolean terbang) { this.nama = nama; jumKaki = kaki; bisaTerbang = terbang; } public abstract void bersuara(); public static void makan() { System.out.println("nyam, nyam, nyam"); } public void isHewan() { System.out.println("nama : "+nama); System.out.println("jumlah kaki : "+jumKaki); System.out.println("bisa terbang : "+bisaTerbang);

Semester 2

4

Pemrograman 2 / Kelas E1

5

} } Interface Manusia { public void menyanyi(); public void ketawa(); } class Perkutut extends Hewan { public Perkutut() { super("perkutut",2,true); } public void bersuara() { System.out.println("\ncuit, cuit, cuit"); } public static void main(String[] args) { Perkutut p = new Perkutut(); p.isHewan(); p.bersuara(); } }

PERTANYAAN Pertanyaan : 1. Mengapa method abstrak tidak dapat dibuat method yang static dan dan abstrac? Karena keduanya saling kontradiksi. 2. Berapa maksimal data yang digunakan dalam inner class? (sidik) Terserah, tapi jangan terlalu banyak hingga 1000 class.

Semester 2

5

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->