Pemrograman Lanjut Class dan Object Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut
Objectives Memahami tentang classes, objects, methods dan instance variables. Mampu memberikan contoh object beserta atribut dan tingkah lakunya.
Konsep OOP OOP (Object Oriented Programming) memandang semua aspek sebagai suatu obyek OOP berputar pada konsep dari object sebagai elemen dasar dari program Beberapa objek disekitar kita, seperti mobil, singa, manusia dan seterusnya dapat dimodelkan ke dalam objek Object ini dikarakterisasi oleh sifat/attributnya dan tingkah lakunya
Konsep Objek Contohnya: mobil dan singa Objek mobil mempunyai sifat-sifat seperti: merk, tipe transmisi, warna, dan jenis. Mempunyai perilaku bisa berbelok, mengerem, dan berakselerasi. Dengan cara yang sama pula kita dapat mendefinisikan perbedaan sifat dan tingkah laku dari singa. Sifat Umur, warna, rambut, suara, Tingkah Laku Makan, minum, mengaum, berlari, tidur
Konsep Objek Objek pada dunia nyata dapat secara mudah dimodelisasi sebagai objek software menggunakan sifat sebagai data dan tingkah laku sebagai method. Objek mobil dalam software permainan balap mobil Objek singa dalam software pendidikan interaktif pada kebun binatang untuk anak anak
Konsep Objek dalam Program Sebuah objek adalah sebuah komponen software yang stukturnya mirip dengan objek pada dunia nyata Setiap objek dibuat dari satu set data (sifat) dimana variable menjabarkan esensial karakter dari objek, dan juga terdiri dari satu set dari method (tingkah laku) yang menjabarkan bagaimana tingkah laku dari objek. Jadi objek adalah sebuah berkas software dari variable dan method yang saling berhubungan
Class Class adalah struktur dasar (abstraksi) suatu objek pada pemrograman berorientasi objek (OOP). Terdiri dari dua tipe dari anggota yang disebut dengan field (attribut/properti) dan method. Field menspesifikasi tipe data yang didefinisikan oleh class. Method spesifikasi dari suatu operasi. Sebuah objek adalah sebuah instance (wujud nyata) dari sebuah class.
Class dan Object Cetakan kue: kelas Dapat digunakan berkali-kali untuk mencetak kukis. Kue: objek Sebuah kelas dapat menghasilkan banyak objek Dari 1 cetakan dapat dibuat banyak kukis dengan berbagai macam hiasan, namun kukis-kukis tersebut tetap memiliki bentuk yang sama.
Class Kelas menyatakan konsep (blueprint) Kelas mendefinisikan karakteristik (atribut) dan aksi (method) yang dimiliki objek. Objek adalah perwujudan dari konsep kelas (instance of class) Setiap objek memiliki kelas yang mendefinisikan data dan aksi yang dimiliki oleh objek tersebut.
Class Class merupakan template/abstraksi untuk membuat objek. Class merupakan prototipe/blueprints yang mendefinisikan variabel-variabel dan method-method secara umum. Obyek merupakan hasil instansiasi dari suatu kelas. Proses pembentukan obyek dari suatu class disebut dengan instantiation. Obyek disebut juga instances.
Object Sebuah objek adalah sebuah instance pada class. Variable dan methods dalam objek Java secara formal diketahui sebagai instance variable dan instance methods untuk membedakannya dari class variable dan class method
Perbedaan Class dan Object Sebuah class mobil dimana dapat digunakan untuk mendefinisikan beberapa object mobil Mobil A dan mobil B adalah objek dari kelas mobil
Perbedaan Class dan Object Class name : Circle Data Field : Radius Methods: - getarea() - getperimeter() Class template Three objects of Circle class Object1 : Circle1 Object2 : Circle2 Object3 : Circle3 Data Field: Radius = 15 Data Field: Radius = 20 Data Field: Radius = 5
Class Ketika suatu kelas diinisialisasi, tiap objek akan mendapatkan set variabel baru dari suatu class. Implementasi dari method dibagi diantara objek pada kelas yang sama. Class menyediakan keuntungan berupa reusability.
Variabel Class Variabel class merupakan variabel milik dari seluruh class Variabel ini memiliki nilai yang sama untuk semua objek pada kelas yang sama Variabel ini juga disebut static member variables
Method Sebuah method adalah bagian terpisah dari kode yang akan dipanggil oleh program utama dan beberapa method lainnya untuk menunjukkan beberapa fungsi spesifik. Mengapa kita perlu membuat method? Mengapa kita tidak meletakkan semua kode pada sebuah method yang sangat besar, seperti pada layaknya sebuah program struktural
Object, Method and Instance Object memiliki identitas/atribut, state/nilai dari atribut, dan tingkah lakuyang bersifat unik State: direpresentasikan oleh data fields (properties / attributes) dengan nilai yang terkandung di dalamnya. Atribut/Identitas dispesifikasikan olehinstance variables. Perilaku: didefinisikan oleh sekumpulan method. Memanggil method pada objek berarti bahwa Anda meminta objek untuk melakukan tugas. Melakukan tugas dalam program membutuhkan method. Class menyediakan satu atau lebih method yang dirancang untuk melakukan tugas-tugas class itu. Method ini dikenal sebagai instance methods karena memeriksa atau mengubah the state of a particular instance variable.
Interaksi antar Object Object berinteraksi dan berkomunikasi dengan object lain dengan mengirimkan pesan. Ketika object A menginginkan object B untuk menjalankan salah satu method (meminta object B untuk melakukan sesuatu), maka object A mengirimkan pesan ke object B A message B
Contoh Interaksi Antar Object Sebuah mobil hanyalah seonggok besi dan karet roda, dimana mobil itu tidak dapat melakukan apapun oleh dirinya sendiri. Mobil baru dapat berfungsi jika objek lain (misalnya manusia) berinteraksi dengan mobil (misalnya menginjak pedal gas). Ketika sebuah mobil dikendarai, manusia menginjak pedal gas mobil untuk membuat mobil melaju lebih cepat. Hal ini dapat diartikan bahwa manusia mengirimkan pesan kepada mobil.
Contoh Interaksi Antar Object (2) Dalam OOP, ketika objek manusia mengirimkan pesan kepada mobil dengan memanggil perilaku/method yang ada pada objek mobil. mobil.tancapgas(); Manusia Mobil pesan / messages
Contoh Interaksi Antar Object dalam Program Java class Manusia { private String nama; void ngebut() { Mobil ferrari = new Mobil(); ferrari.tancapgas(); print(ferrari.kecepatan); class Mobil { public int kecepatan; void tancapgas() { this.kecepatan = 200; } } } } Manusia joko = new Manusia(); joko.ngebut(); // menampilkan kecepatan mobil
Questions?
Practice Buatlah dua buah kelas yang bukan: Mahasiswa Dosen Buatlah Sifat/Atribut/Properti/Field Buatlah Tingkah laku/behavior/method Yang memperlihatkan interaksi antar dua kelas tersebut Modelkan Class tersebut ke dalam diagram Class UML Subject e-mail: Tugas I Class UML Sebelum Senin, 22 Februari 2016, pukul 22:00 WIB