Your SlideShare is downloading. ×
0
Other OOP Basic
Konsep penting
 Method overloading
 Encapsulation
 this keyword
 final
 static
Visualisasi Class
 Class divisualisasikan dalam UML sebagai
kotak persegi dengan 3 ruang:
◦ Nama : identitas kelas
◦ Vari...
Method Overloading
 Method overloading: nama methodnya
sama namun beda implementasinya.
 Perbedaan implementasi: dibedak...
Contoh
Method Overloading pada
Constructor
// Define the Circle class
public class Circle { // Save as "Circle.java"
// Private v...
public vs private
 public: class/variabel/method dapat diakses
oleh semua objek dalam sistem.
 private: variabel/method ...
Encapsulation
 Objek tidak seharusnya membuka lebar
semua informasi mengenainya.Ada
informasi yang harus ditutupi dari kl...
Encapsulation
 Satu class me-encapsulate/ membungkus
data (dalam variabel) dan algoritma (dalam
method).
 Nilai dari var...
Information Hiding
 Variabel di-encapsulate
dalam class dengan
menggunakan akses private.
 Untuk mencapainya kita
panggi...
Keyword this
 Keyword this digunakan untuk merujuk pada objek
ini dalam suatu class.
 Kegunaannya untuk menghilangkan am...
Method toString()
 Method toString() merupakan salah satu method dasar
yang ada dalam class Object, yang akan mengembalik...
Constant (final)
 Constant pada Java menggunakan
keyword final.
 Variabel final hanya bisa diberi nilai sekali
dan tidak...
Static
 Variabel static: variabel
class
 Variabel static akan
diinisialisasi ketika
kelas diinisialisasi.
Walaupun ada b...
Contoh
// The Circle class definition
public class Circle { // Save as "Circle.java"
// Public constants
public static fin...
Kerjasama Objek
 Pada suatu aplikasi berbasis objek, aplikasi
tersebut menciptakan objek yang saling
berkolaborasi di dal...
Latihan
Permainan Daduku dimainkan oleh dua pemain. Setiap pemain
yang mendapat giliran akan melempar dua dadu bersamaan.
...
Class yang terlibat pada permainan
Daduku
Dadu
- sisi : int
+ Dadu ()
+ getSisi () : int
+ setSisi (sisi : int) : void
+ l...
Latihan
 Gender bisa :‘l’ || ‘p’ atau ‘L’ || ‘P’
 Method toString() mengembalikan "author-
name (gender) at email", e.g....
Latihan
 Asumsi: buku dikarang oleh satu pengarang saja.
 Method toString() that returns "'book-name' by author-
name (g...
2.other oop basic
Upcoming SlideShare
Loading in...5
×

2.other oop basic

112

Published on

Materi Kuliah Pemrograman Beorientasi Object (PBO) - Teknik Informatika Universitas Bengkulu @2013/2014 - Endina Putri Purwandari, S.T., M.Kom -
by:akachopa [ www.akachopa.com ]

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
112
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "2.other oop basic"

  1. 1. Other OOP Basic
  2. 2. Konsep penting  Method overloading  Encapsulation  this keyword  final  static
  3. 3. Visualisasi Class  Class divisualisasikan dalam UML sebagai kotak persegi dengan 3 ruang: ◦ Nama : identitas kelas ◦ Variabel (atribut, state, field): atribut kelas ◦ Method (behavior, function, operation) : perilaku kelas
  4. 4. Method Overloading  Method overloading: nama methodnya sama namun beda implementasinya.  Perbedaan implementasi: dibedakan oleh parameternya (jumlah parameter, tipe data parameter, urutan parameter)
  5. 5. Contoh
  6. 6. Method Overloading pada Constructor // Define the Circle class public class Circle { // Save as "Circle.java" // Private variables private double radius; private String color; // Constructors (overloaded) public Circle() { // 1st Constructor radius = 1.0; color = "red"; } public Circle(double r) { // 2nd Constructor radius = r; color = "red"; } public Circle(double r, String c) { // 3rd Constructor radius = r; color = c; } } Kelas Circle memiliki 3 method Constructor. Method mana yang dipilih akan disesuaikan dengan parameter yang digunakan sewaktu mencipta objek Circle. Jika tidak ketemu padanannya akan muncul error kompilasi
  7. 7. public vs private  public: class/variabel/method dapat diakses oleh semua objek dalam sistem.  private: variabel/method dapat diakses oleh kelas itu sendiri Pada UML: public dinotasikan dengan + private dinotasikan dengan -
  8. 8. Encapsulation  Objek tidak seharusnya membuka lebar semua informasi mengenainya.Ada informasi yang harus ditutupi dari klien. ◦ Nasabah tidak perlu tahu proses di dalam mesin ATM sewaktu penarikan  Encapsulation adalah teknik mempaketkan informasi dengan menyembunyikan segala hal yg harus disembunyikan dan menampakkan segala hal yang bisa ditampakkan.
  9. 9. Encapsulation  Satu class me-encapsulate/ membungkus data (dalam variabel) dan algoritma (dalam method).  Nilai dari variabel menggambarkan kondisinya (state)  Method menggambarkan perilakunya (behavior)
  10. 10. Information Hiding  Variabel di-encapsulate dalam class dengan menggunakan akses private.  Untuk mencapainya kita panggil/buat method accessor yang public.  Objek saling berkomunikasi antar sesamanya dengan menggunakan antar-muka (method public).  Implementasi dalam method di-encapsulate dalam class.
  11. 11. Keyword this  Keyword this digunakan untuk merujuk pada objek ini dalam suatu class.  Kegunaannya untuk menghilangkan ambigu.  this dapat digunakan untuk variabel dan method.  Pada constructor, this digunakan untuk memanggil constructor lain.
  12. 12. Method toString()  Method toString() merupakan salah satu method dasar yang ada dalam class Object, yang akan mengembalikan String.  Setiap class dalam Java, sebaiknya mengoverride method toString() dengan cara mencetak deskripsi umum dari objek tersebut.
  13. 13. Constant (final)  Constant pada Java menggunakan keyword final.  Variabel final hanya bisa diberi nilai sekali dan tidak bisa diubah.
  14. 14. Static  Variabel static: variabel class  Variabel static akan diinisialisasi ketika kelas diinisialisasi. Walaupun ada banyak objek hasil ciptaan suatu class yang memiliki variabel static, variabel staticnya tetaplah satu (kepunyaan class) classTest { static int a=10; static int b =100; } Variabel static dapat diakses seperti ini: Test.a=100; Test.b=200; Cara di bawah juga valid: Test t1=newTest(); Test t2=newTest(); t1.a=100; t2.a=100;
  15. 15. Contoh // The Circle class definition public class Circle { // Save as "Circle.java" // Public constants public static final double DEFAULT_RADIUS = 8.8; public static final String DEFAULT_COLOR = "red"; // Private variables private double radius; private String color; // Constructors (overloaded) public Circle() { // 1st Constructor radius = DEFAULT_RADIUS; color = DEFAULT_COLOR; } public Circle(double radius) { // 2nd Constructor this.radius = radius; color = DEFAULT_COLOR; } public Circle(double radius, String color) { // 3rd Constructor this.radius = radius; this.color = color; } // Public getter and setter for private variables public double getRadius() { return radius; } public void setRadius(double radius) { this.radius = radius; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } // toString() to provide a short description of this instance public String toString() { return "Circle with radius = " + radius + " and color of " + color; } // Public methods public double getArea() { return radius*radius*Math.PI; } }
  16. 16. Kerjasama Objek  Pada suatu aplikasi berbasis objek, aplikasi tersebut menciptakan objek yang saling berkolaborasi di dalam memori
  17. 17. Latihan Permainan Daduku dimainkan oleh dua pemain. Setiap pemain yang mendapat giliran akan melempar dua dadu bersamaan. Nilai yang muncul pada kedua dadu mempunyai nilai tertentu, seperti di bawah: Kombinasi Skor * Nilai 1 muncul hanya pada satu dadu 100 * Nilai 5 muncul hanya pada satu dadu 50 * Kedua dadu menampilkan nilai 2 200 * Kedua dadu menampilkan nilai 3 150 * Kedua dadu menampilkan nilai 6 250 Salah satu pemain akan dinyatakan menang jika berhasil mengumpulkan nilai lebih dari 1000. Ada berapa class yang terlibat pada permainan ini?
  18. 18. Class yang terlibat pada permainan Daduku Dadu - sisi : int + Dadu () + getSisi () : int + setSisi (sisi : int) : void + lemparDadu () : void + toString () : String Pemain - nama : String - nilai : int + Pemain (nama:String) + getNama () : String + setNama (nama : String) : void + getNilai () :int + setNilai (skor : int) : void + toString () : String Permainan - ? - ?
  19. 19. Latihan  Gender bisa :‘l’ || ‘p’ atau ‘L’ || ‘P’  Method toString() mengembalikan "author- name (gender) at email", e.g.,“Amira (p) at amira@somewhere.com".
  20. 20. Latihan  Asumsi: buku dikarang oleh satu pengarang saja.  Method toString() that returns "'book-name' by author- name (gender) at email". Gunakan method Author's toString(), yg mengembalikan "author-name (gender) at email".
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×