1 Pertemuan 5 Encapsulation Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.

Slides:



Advertisements
Presentasi serupa
Pemrograman Berorientasi Objek
Advertisements

Pemrograman Berorientasi Objek
Modul 14 – Hendi Hermawan - 1
// memerlukan default constructor
Pemrograman Berbasis Objek
Workshop SCS: Java Game Programming
BAB III – CLASS (1) DIKTAT PBO Oleh: Adam Mukharil B. S.Kom.
di OBJECT ORIENTED PROGRAMMING [OOP] Oleh H. SUMIJAN, Ir, M.Sc
Membuat Class Sendiri Atribut Pertemuan : Object Oriented Programming.
Pemrograman Berbasis Obyek
MINGGU 5 Java Programming (MKB614C)
Class, Inheritance, Encapsulation & Interface
Pemrograman Berorientasi Obyek Oleh Tita Karlita
Review :: Kisi-kisi UTS ::
Class.
Pemrograman Berorientasi Obyek
Class Member Access Control
Pemrograman Berorientasi Obyek1 Sub Pokok Bahasan Array of class. Array Class. Pointer of class. Dynamic Memory Management.
1 Pertemuan 14 Operator Overloading Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Class and Object Introduction Specifying a Class Defining Member Function A C++ Program with Class Nesting of Member Functions Private Member Functions.
STRUCT OF ARRAY Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Friend. Adalah fungsi bukan anggota kelas yg dapat mengakses anggota kelas. Secara umum friend berguna jika terdapat suatu operasi yg hendak mengakses.
1 Pertemuan 6 Encapsulation Lanjutan Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
Teknik Pemrograman Terstruktur Linked lis & Inheritance 1/12 Pointer (Lanjutan…) Pemrograman Berorientasi Objek.
Pemrograman Berorientasi Obyek1 Sub Pokok Bahasan Pointer. Reference. Function Passing Parameter by Value, by Reference, by Pointer.
FUNCTIONS Pertemuan 9 Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007.
1 Pertemuan 17 Polymorphism Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
PERTEMUAN KE-9 IFII SAINTEC UIN SGD. FUNCTION (FUNGSI) Function (fungsi) adalah kumpulan pernyataan/statement yang diberi nama, dimana nama tersebut dapat.
1 Pertemuan 9 Inheritance Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
Class and Object Matakuliah : XXXX / Algoritma dan Metode Object Oriented Programming II Pertemuan : 2 Tahun : 2008 Versi : 1/0.
1 Pertemuan 2 Function & Pointer Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
METHOD, ARRAY DAN STRING
Pemrograman Berorientasi Obyek1 Sub Pokok Bahasan Nested Object. Friend Keyword. Pointer This. Operator Overloading.
Fungsi, Array dan String
1 Pertemuan 18 Template Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Matakuliah : T0044/Pemrograman Berorientasi Obyek
Pertemuan 10 Constructor dan Destructor
1 Pertemuan 7 Review 1 – 6 Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
1 Pertemuan 8 Array & Pointer of Class Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
1 Pertemuan 12 Template Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
1 Pertemuan 10 Pemrograman Berorientasi Objek Matakuliah: >/ > Tahun: > Versi: >
Firman Asharudin | Pemrograman Lanjut
Outline: Class Objek Konstruktor Destruktor Overloading dan Tipe value
Access Modifier.
Pertemuan 10 Inheritance Lanjutan
Pertemuan 4 Abstract Data Type
Polymorphism Pertemuan 23-24
KELOMPOK 9 ROBBY SETIAWAN AKBAR BAI ALIM WASSAHUA
Enkapsulasi, Accessor Method, Mutator Method
Constructor overloading
Constructor dan Destructor Pertemuan 17
Inheritance Pertemuan 21
MEMBUAT CLASS SENDIRI 2.
Class dan Objek Lanjutan Pertemuan 18
Pertemuan 9 Pemrograman Berbasikan Objek
Pemrograman Berorientasi Objek
Pemrograman Berorientsi Objek Pertemuan 15
Abstract Data Type Deklarasi Struct Access Struct Member Nested Struct
Membuat Kelas.
QUIS Algoritma Pemrograman I
Class.
PBO Lanjutan Membuat Kelas.
Generic Data Type Pertemuan 25
Matakuliah : M0074/PROGRAMMING II Tahun : 2005 Versi : 1/0
Array, Class, Obyek, Method danConstructor.
Dasar-dasar Pemrograman Objek dg Java
(Object Oriented Programming)
Pemrograman Berorientasi Obyek
Pemrograman Berbasis Objek
Array, Class, Obyek, Method danConstructor.
Transcript presentasi:

1 Pertemuan 5 Encapsulation Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0

2 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Menyimpulkan konsep Encapsulation dalam PBO

3 Outline Materi Konsep Encapsulation Struct vs Class Class Access Control Constructor & Destructor Object Class Access with scope resolution operator ( :: )

4 Konsep Encapsulation Encapsulation  pengelompokan data dan functions menjadi satu dalam sebuah class. Memiliki batasan akses dg default private (default access struct public). –reduces coupling, and almost paradoxically, increases the ability to create large programs. –encourage coherence, which means that any given class does one thing. By increasing coherence, a program becomes easier to understand, more simply organized, and this better organization is reflected in a further reduction in coupling. Information hiding –Class objects communicate across well-defined interfaces –Implementation details hidden within classes themselves

5 Struct VS Class struct Product { int Prod_id; char Prod_Name; float Price; int Stock_qty; }; Product Brg1; class Product { public: int Prod_id; char Prod_Name; float Price; int Stock_qty; }; Product Brg1; Default Access member: public Default Access member: private Struct Object Class Object

6 3 Access Level Public: –Bagian class yang dapat diakses oleh umum baik dari dalam maupun dari luar class Protected: –Bagian class yang dapat diakses oleh linkungan internal class dan class turunannya Private: –Bagian class yang hanya dapat diakses oleh linkungan internal class itu sendiri

7 Constructor & Destructor class Time { private:int hour; int minute; int second; public:Time(); void setTime( int, int, int ); void printUniversal(); void printStandard(); ~Time(); }; Constructor Destructor

8 Constructor & Destructor Constructor  member function yang pertama kali di kerjakan ketika satu object di create –Nama constructor harus sama dengan nama classnya –Untuk inisialisasi object –Minimal ada 1 constructor dalam class (bisa lebih / di overload), jika tidak di tulis compiler akan mengenerate default constructor untuk class tersebut –Dapat diberikan argumen –Tidak memiliki return value (default: void)

9 Constructor & Destructor Destructor  member function yang di kerjakan ketika satu object di destroy / death (sebagai pengakhiran object) –Nama destructor sama dengan nama classnya ditambah tanda tilde (~) di awalnya –Untuk de-inisialisasi / clean up / dealokasi memory –Hanya ada 1 desctuctor (tdk dapat di overload) –Tidak memiliki argumen –Tidak memiliki return value

10 Object Class Deklarasi Object Class Time timeObject; //object biasa Time timeArray[ 10 ]; // object array Time *timePtr; //object pointer Time &timeRef = timeObject; // object reference

11 Access with scope resolution operator ( :: ) ClassName :: classMemberName class Time { private: int hour; int minute; int second; public: Time() { hour = minute = second = 0; } void setTime( int, int, int ); void printUniversal(); void printStandard(); ~Time(){ } }; void Time :: setTime( int h, int m, int s ) { hour = ( h >= 0 && h < 24 ) ? h : 0; minute = ( m >= 0 && m < 60 ) ? m : 0; second = ( s >= 0 && s < 60 ) ? s : 0; } void Time :: printUniversal() { cout << setfill( '0' ) << setw( 2 ) << hour << ":" << setw( 2 ) << minute << ":" << setw( 2 ) << second; } void Time :: printStandard() { cout << ( ( hour == 0 || hour == 12 ) ? 12 : hour % 12 ) << ":" << setfill( '0' ) << setw( 2 ) << minute << ":" << setw( 2 ) << second << ( hour < 12 ? " AM" : " PM" ); }

12 Tugas 5 Tugas 5A: Mahasiswa membuat ringkasan tentang konsep encapsulation pada OOP dan implementasinya pada C++ Tugas 5B: Mahasiswa membuat analisis contoh program dengan encapsulation dari dosen Tugas 5C: Mahasiswa membuat program sederhana dengan mengggunakan konsep Encapsulation