Konsep Objek Oriented

dokumen-dokumen yang mirip
KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

Bahasa Pemrograman :: Polimorfism and Abstraction

Inheritance (Pewarisan) Pengertian dasar inheritance

Object Oriented Programming (Class, Inheritance, Encapsulation dan Interface)

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

Jobsheet 09. Overloading and Overriding Method

Modul II Object Oriented Programming

Konsep Dasar Pemrograman Berorientasi Objek

Polymorphism (Polimorfisme)

Object Oriented Programming LOGO

3/31/2011. Tujuan. Inheritance, Polymorphism,& Interfaces. Inheritance / pewarisan. Inheritance / pewarisan. Inheritance / pewarisan

BAB 1 PENGENALAN PEMROGRAMAN BERORIENTASI OBJEK

Pemrograman Web. Pemrograman Berorientasi Objek. Adam Hendra Brata

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

Konsep Pemrograman Berbasis Obyek

Gambar 1: Hirarki class

PEMROGRAMAN PHP DASAR

Modul 06. Pengantar Objek

Pemrograman Web. Pemrograman Berorientasi Objek. 8 Adam Hendra Brata

Inheritance dan Kata Kunci static

Pemrograman Berorientasi Obyek. Ramos Somya

Object OOP. Polymor phism

Pewarisan, Polimorfisme, dan Interface

Chapter 10 Polimorphism

Praktikum 6 Abstract, Interface, Overloading, Overriding, dan Package

Pemrograman Lanjut Review Class dan Object PTIIK

public class B extends A {... }

Bahasa Pemrograman I VB.Net. Oleh: Erik Perdana Ibrahim, S.Kom 2011

BAB II TEORI DAN KONSEP PEMROGRAMAN BERBASIS OBJECT

5/23/12. Inheritance. Pengertian inheritance Deklarasi inheritance Single inheritance Multilevel inheritance Access Control super keyword

Bahasa Pemrograman :: Inheritance

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

PEMROGRAMAN JAVA. Yoannita, S.Kom. Class & Method sederhana Konsep Pemrograman Berorientasi Objek. Company LOGO

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

1.Tujuan. 2. Latar Belakang. Mendefinisikan superclasses dan subclasses Override method dari superclasses Membuat method final dan class final

MODUL 3. Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM LANDASAN TEORI. A. Inheritance

(INHERITANCE) Nurochman

Pemrograman I. By : Sri Rezeki Candra Nursari SKS

Pemrograman Berorientasi Objek / Object Oriented Programming / (OOP) Nur Hasanah, M.Cs

GARIS-GARIS BESAR PROGRAM PERKULIAHAN (GBPP)

SYLLABUS DAN PENDAHULUAN. Astrid Lestari Tungadi, S.Kom., M.TI.

Praktikum 4 Konsep Inheritance, Polymorphism, dan Encapsulation

Bahasa Pemograman II. Object Oriented Programming

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

PRAKTIKUM OBJECT ORIENTED PROGRAMING

PEMROGRAMAN JAVA. Yoannita. Konsep Pemrograman Berorientasi Objek. Company LOGO

UNIVERSITAS GUNADARMA

Algoritma Alg dan Pemr P ograman emr 1 C++ Class & Object

Pertemuan 4 Halaman 1/1. Class Inheritance

DASAR PEMROGRAMAN. Konsep Pemrograman Berorientasi Objek. Yoannita

Object Oriented Programming 1

Pemrograman Berorientasi. Abstract & Interface

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

Pemograman Berorientasi Objek. Week 3 Abstrak dan Interface dalam suatu kelas

KONSEP OOP: PEWARISAN / INHERITANCE

Inheritance. Pertemuan 8 Pemrograman Berbasis Obyek

KONSEP Pemrograman Berorientasi Objek KARMILASARI

Dasar-Dasar OOP di Java

KONSEP OOP: POLYMORPHISM

Pemrograman Berbasis Objek Inheritance

Like mother, like daughter... [common saying]

Pemrograman Berorientasi Objek

VISUAL BASIC Pengenalan VB NET

OVERLOADING, CONSTRUCTOR DAN DESTRUCTOR. Dewi Sartika, M.Kom

2015 BAHASA PEMROGRAMAN I. Pertemuan VI Inheritance (Pewarisan)

Object Oriented Programming (OOP) --Inheritance- Saniati STMIK Teknokrat, Bandar Lampung

BAB VIII Dasar pemrograman beorientasi object dengan PHP

Pengenalan OOP. Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program.

BAB VIII CLASS ABSTRACT & CLASS INTERFACE. //abstract class bisa, kelas biasa bisa System.out.println("Ini nama");

MODUL 1 PENGENALAN OOP

KONSEP OBJEK ORIENTASI PROGRAM

Pemrograman I. By : Sri Rezeki Candra Nursari SKS

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PENGENALAN OBJECT ORIENTED PROGRAMMING

Praktikum 3 Konsep Class, Attribute dan Method

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Pemrograman Berbasis Objek (Polimorfisme)

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Pemrograman I. By : Sri Rezeki Candra Nursari SKS

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

PRAKTIKUM III & IV PEMROGRAMAN BERORIENTASI OBJEK

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

Inheritance. Topik 5/17/2013

Praktikum Minggu VI 1 dan 2 Dasar-dasar Object Oriented Programming PHP

KONSEP OOP: PEWARISAN / INHERITANCE

PENGHITUNGAN JARI-JARI PADA OBJEK LINGKARAN DALAM BAHASA JAVA

MODUL 6. PEMROGRAMAN VISUAL BASIC.NET DENGAN OOP (II) dan STRING

Class & Sequence Diagram

Membuat dan Menggunakan Class

Konsep dan Teknik Menguasai Modern OOP di PHP. Awan Pribadi Basuki CV. LOKOMEDIA

KONSEP OOP: POLYMORPHISM

PERTEMUAN 5 OOP. Objektif : Praktikan mengetahui konsep OOP. Praktikan dapat membuat program sederhana dengan konsep OOP.

Pertemuan 11 Object Oriented Program

MODUL 1. Class, Object, Constructor dan Method

PEMROGRAMAN BERORIENTASI OBJEK

Overriding. Subclass yang berusaha memodifikasi tingkah laku yang diwarisi dari superclass. Tujuan: subclass memiliki tingkah laku yang lebih

Transkripsi:

Konsep Objek Oriented

OBJEK OBJECT is a thing which has BEHAVIOR, IDENTITY, & STATE. OBJEK adalah suatu benda yang mempunyai TINGKAH LAKU, IDENTITAS, dan KEADAAN. Contoh: MANUSIA, PEKERJAAN, PEGAWAI, PROJEK, PEGAWAI TETAP, PEGAWAI PARUH WAKTU

OBJEK OBJEK mempunyai: TINGKAH LAKU untuk berinteraksi dengan objek yang lain dan menerima pesan serta bereaksi terhadap pesan tersebut. Contoh: MANUSIA melakukan PEKERJAAN PEGAWAI menyelesaikan PROJEK yang ditugaskan PEGAWAI TETAP menyelesaikan PEKERJAAN secara rutin PEGAWAI PARUH WAKTU mengerjakan PROJEK berdasarkan waktu

OBJEK OBJEK mempunyai: IDENTITAS yang membedakannya dengan objek yang lain. Contoh: PEGAWAI mempunyai NAMA PEGAWAI PEKERJAAN mempunyai NAMA PEKERJAAN PEGAWAI TETAP mempunyai GAJI BULANAN PEGAWAI PARUH WAKTU mempunyai UPAH PER JAM PROJEK mempunyai DEADLINE

OBJEK OBJEK mempunyai: KEADAAN yang mempengaruhi kondisi internalnya. Contoh: PEGAWAI mempunyai NAMA: I Putu Jawa PROJEK mempunyai NAMA: Pengembangan Sistem Informasi Pegawai, DEADLINE: 18 Oktober 2011 PEGAWAI TETAP mempunyai GAJI BULANAN: Rp. 3.000.000,- PEGAWAI PARUH WAKTU mempunyai GAJI PER JAM: Rp. 150.000,-

OBJEK OOP melihat benda di dunia nyata sebagai objek Reality: Owns Model: Person Car Model: Sales Store Create Products Bill Consists

OBJECT dan CLASS CLASS adalah suatu cetakan (template) untuk membuat beberapa OBJECT yang mempunyai karakteristik yang sama Contoh: CLASS PEGAWAI digunakan untuk mencetak suatu OBJECT PEGAWAI (misalnya dengan nama IPUTUJAWA atau IMADEBALI) CLASS PROJEK digunakan untuk membuat suatu OBJECT PROJEK (misalnya dengan nama SIMPEG atau SIMKEU)

OBJECT dan CLASS Employee +name setname() getname() Nama CLASS Identitas (Identity) - Attribute Tingkah Laku (Behavior) - Method Cetakan (template) untuk membuat OBJEK PEGAWAI (EMPLOYEE) dengan satu identitas (ATTRIBUTE) dan dua tingkah laku (METHOD)

OBJECT ORIENTED Object : Yacht Class : Yacht Yacht Drawing 1 Instance of Size= small Color = brown Size=? Color =? Instance of Size= big Color = green

OBJECT ORIENTED Karakteristik Konsep Objek Oriented mencakup: Encapsulation Pembungkusan private attribute dan public method Inheritance Penurunan sifat induk ke anak class (attribute & method) Overriding Proses perubahan method yang ada di Class Induk Polymorphism Perubahan menjadi objek yang berbeda Abstraction Class yang bukan merupakan cetakan (template) Interfaces Class yang terdiri dari abstract method saja Package Pengelompokan class terkait

ENCAPSULATION public class Job private String name public void setname() public String getname() Public CLASS Private Attribute Public Method CLASS JOB yang bersifat PUBLIC (bisa diakses umum) dengan satu ATTRIBUTE yang bersifat PRIVATE (tidak bisa diakses umum) dan empat METHOD yang bersifat PUBLIC (bisa diakses umum)

ENCAPSULATION Keuntungan: - Attribute dalam satu kelas dapat dibuat read-only or writeonly. - Class mempunyai kontrol terhadap nilai yang disimpan di dalam attributenya. - Pengguna tidak tahu bagaimana class menyimpan nilai attributenya. Class dapat mengganti tipe data dari attributenya, dan pengguna tidak perlu untuk melakukan perubahan terhadap pemrograman yang telah selesai dilakukan.

INHERITANCE public class Project extends Job private Date deadline public void setname() public void setdeadline() public String getname() public Date getdeadline() Public Child Class Private Attribute Public Method CLASS PROJECT EXTENDS CLASS JOB yang artinya menurunkan sifat-sifat yang ada pada CLASS JOB. Salah satu sifat yang diturunkan adalah ATTRIBUTE NAME. CLASS PROJECT masih bisa mempunyai sifat sendiri seperti ATTRIBUTE DEADLINE dan metodenya.

INHERITANCE public class ProjectDetail extends Project Public Child Class public void setname() public void setdeadline() public String getname() public Date getdeadline() Public Method CLASS PROJECTDETAIL EXTENDS CLASS PROJECT di samping menurunkan sifat pada CLASS PROJECT juga menurunkan sifat pada CLASS JOB. Sifat yang diturunkan dari CLASS JOB adalah ATTRIBUTE NAME. Sifat yang diturunkan dari CLASS PROJECT adalah ATTRIBUTE DEADLINE.

OVERRIDING public class Project extends Job private Date deadline public void setname() public void setdeadline() public String getname() public Date getdeadline() Public Child Class Private Attribute Public Method CLASS PROJECT EXTENDS CLASS JOB artinya CLASS PROJECT dapat melakukan perubahan (overriding) terhadap sifat-sifat yang terdapat pada CLASS JOB. Contohnya: CLASS PROJECT dapat melakukan perubahan (overriding) nilai ATTRIBUTE NAME yang sudah diset di CLASS JOB.

POLYMORPHISM public class FullTimeEmployee extends Employee implements ProjectHandler private double monthlysalary Public void setname() Public String getname() public void setsalary() public double getsalary() Public void setjob() Public Job getjob() Public Child Class Private Attribute Public Method CLASS ANAK FULLTIMEEMPLOYEE mempunyai bentuk yang bermacam-macam. Bisa menjadi EMPLOYEE, bisa menjadi PROJECTHANDLER, bisa menjadi FULLTIMEEMPLOYEE, dan bisa menjadi OBJECT.

POLYMORPHISM public class FullTimeEmployee extends Employee implements ProjectHandler private double monthlysalary Public void setname() Public String getname() public void setmonthlysalary() public double getmonthlysalary() Public void setjob() Public Job getjob() Public Child Class Private Attribute Public Method CLASS ANAK FULLTIMEEMPLOYEE mengimplementasikan INTERFACE PROJECTHANDLER dan meng-extends CLASS EMPLOYEE.

INTERFACE public interface JobHandler Public Interface public void setjob() public Job getjob() Public Method INTERFACE JOBHANDLER yang bersifat PUBLIC (bisa diakses umum) dengan dua METHOD yang bersifat PUBLIC (bisa diakses umum). Interface tidak bisa dijadikan cetakan (template). Interface hanya berisikan metode yang bersifat ABSTRAK (tidak mempunyai tahapan perintah di dalamnya).

ABSTRACTION public abstract class Employee private String Name public void setname() public String getname() Public abstract void setsalary() Public abstract double getsalary() Public Abstract Class Private Attribute Public Method CLASS EMPLOYEE adalah CLASS ABSTRACT yang tidak dapat dijadikan template (cetakan). Beberapa metodenya bersifat abstract yang tidak mempunyai tahapan perintah di dalamnya dan hanya bisa mempunyai tahapan perintah di CLASS anaknya.

PACKAGE Package adalah paket yang menggabungkan beberapa CLASS menjadi satu kesatuan. Cara untuk memasukkan suatu CLASS ke dalam suatu PACKAGE adalah: - Dengan meletakkan file CLASS tersebut pada DIRECTORY yang sesuai dengan nama PACKAGE. Kalau nama PACKAGE merupakan suatu hirarki direktori, pastikan bahwa direktori yang digunakan untuk menyimpan CLASS tersebut sesuai dengan nama PACKAGE yang akan dibuat (Contoh: software.sim.simpeg.*). - Meletakkan nama PACKAGE di baris pertama file CLASS yang akan dimasukkan dalam PACKAGE.

MODIFIER Access Control Modifiers: - Dapat dilihat dalam satu PACKAGE (tidak perlu modifiers). - Dapat dilihat dari dalam CLASS saja (modifier: private) - Dapat dilihat oleh semua orang (modifier: public). - Dapat dilihat oleh PACKAGE dan semua CLASS anaknya (modifier: protected). Non Access Modifiers: - static tidak mengubah atau menggunakan objek yang diciptakan CLASS yang bersangkutan - final menyatakan bahwa ATTRIBUTE atau METHOD yang menggunakan modifiers ini tidak bisa diubah lagi.

Any Questions?