1_konsep dasar pbo
Post on 25-Sep-2015
114 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
KONSEP DASAR PBO
-
MATERIKONSEP DASAR PBOPEWARISANPOLIMORFISME RELASI KELAS OPERATOR OVERLOADING
-
KONSEP DASAR PBOModel ObjekPewarisan Polimorfisme
-
MODEL OBJEK PBOObject, Attributes, Methods, MessagesEncapsulationClass & Instance
-
Object = Attributes + MethodsmessagemessagemessagemessageattributesmethodmethodmethodmethodMODEL OBJEK PBO
-
MODEL OBJEK PBOPemrograman Berorientasi Objek (PBO) Melakukan pembungkusan data (attributes) dan fungsi (behavior) ke paket yang disebut kelas
-
MODEL OBJEK PBOAttributes : data yang menggambarkan status internal sebuah objekmember variables in C++Tidak dapatt diakses dari luar EncapsulationDisebut juga sebagai state.Methods : fungsi yang mengakses status internal sebuah objekmember functions in C++Dapat diakses dari luaarmemanipulasi attributesDisebut juga behavior.
-
CONTOH - 1 WarnaBeratJ Kelaminmenggonggongberlariberbaring
-
CONTOH - 2MengeremUbah gir- gir- kecepatan- putaranUbahputaran
-
Ubah girmengeremUbahputaranUserUser harus menggunakan method untuk memanipulasi objek.User tidak boleh mengakses attributes secara langsung.Akses ke attributes dilakukan oleh method.Method dapat menjaga konsistensi attributes.OKOKNO!OKENKAPSULASI- gir- kecepatan- putaran
-
IMPLEMENTASI DENGAN C++Kelas (Class)Objek ModelAttributes (data members) Behaviors (member functions)Didefinisikan dengan keyword classMember functionsMethodsDipanggil sebagai response terhadap pesan
-
IMPLEMENTASI DENGAN C++class Sepeda { }; Sepeda
-
IMPLEMENTASI DENGAN C++Mode AksesprivateDefault mode aksesDapat diakses oleh member functionspublic Dapat diakses oleh setiap Accessible fungsi dalam program protected Pewarisan
-
IMPLEMENTASI DENGAN C++class Sepeda { }; MengeremUbah girUbahputaranvoid mengubahPutaran(int);void mengubahGir(int); void mengerem(); public:Sepeda
-
IMPLEMENTASI DENGAN C++class Sepeda { }; MengeremUbah girUbahputaranvoid mengubahPutaran(int);void mengubahGir(int); void mengerem(); public:private:- gir- kecepatan- putaranint gir;int kecepatan; int putaran; Sepeda
-
IMPLEMENTASI DENGAN C++class Sepeda { }; MengeremUbah girUbahputaranvoid mengubahPutaran(int);void mengubahGir(int); void mengerem(); public:private:- gir- kecepatan- putaranint gir;int kecepatan; int putaran; SepedaSepeda (int); //konstruktor
-
IMPLEMENTASI DENGAN C++Fungsi Constructormember function khususmenginisialisasi data membersMemiliki nama yang sama dengan nama kelasDipanggil saat membuat objek dari kelas. Tidak memiliki tipe balikan
-
IMPLEMENTASI DENGAN C++Member functions didefinisikan di luar kelasBinary scope resolution operator (::)mengikat nama fungsi ke nama kelasMengindentifikasi fungsi dari suatu kelas tertentuFormatNilaiBalikan NamaKelas::NamaFungsi( ){}
-
IMPLEMENTASI DENGAN C++Member functions didefinisikan di dalam kelasTidak membutuhkan scope resolution operator dan nama kelas
-
IMPLEMENTASI DENGAN C++Sepeda::Sepeda() { gir = kecepatan = putaran = 0; } // constructor void Sepeda::mengubahPutaran(int p) { putaran = p; } // mengubahPutaran void Sepeda::mengubahGir(int g) { gir = g;} // mengubahGir
- IMPLEMENTASI DENGAN C++void Sepeda::mengerem(){ cout
-
ClassInstance-Blueprint sebuah objek-tidak ada alokasi memori (hanya deklarasi)-Objek aktual yang dibuat -membutuhkan ruang memori untuk atribut dan fungsiInstantiateKELAS DAN INSTANCEMengeremUbah girUbahputaran- gir- kecepatan- putaranMengeremUbah girUbahputaran- gir = 2 - kecepatan = 10 [mph]- putaran = 40 [rpm]
-
sepeda1- putaran = 60 [rpm]- gir = 3Instance objek yang berbeda dapat memiliki nilai atribut yang berbeda - kecepatan = 4 [mph]- putaran = 12 [rpm]- gir = 1- kecepatan = 35 [mph]- putaran = 80 [rpm]- gir = 5sepeda2sepeda3- kecepatan = 10 [mph]kelas SepedaKELAS DAN INSTANCE
-
IMPLEMENTASI DENGAN C++int main(){ Sepeda sepeda1(10,60,3), sepeda2(4,12,1), sepeda3(35,80,5); // instantiasi objek kelas Sepeda sepeda1.tampilInfo(); sepeda2.tampilInfo(); sepeda3.tampilInfo(); //s.mengubahGir(2); //s.tampilInfo(); getch(); return 0; } // end main
-
IMPLEMENTASI DENGAN C++class PersegiPanjang { }; PersegiPanjang
-
IMPLEMENTASI DENGAN C++class PersegiPanjang { }; Ubah panjangUbahlebarvoid ubahpanjan(int);void ubahlebar(int);public:private:- panjang- lebarInt panjang;Int lebar; PersegiPanjang
-
IMPLEMENTASI DENGAN C++class PersegiPanjang { }; Ubah panjangUbahlebarvoid UbahPanjang(int);void UbahLebar(int);public:private:- panjang- lebarInt panjang;Int lebar; PersegiPanjangPersegipanjang (int,int);//constructor
-
IMPLEMENTASI DENGAN C++PersegiPanjang::PersegiPanjang() { panjang = lebar=1; } // constructor void PersegiPanjang::UbahPanjang(int p) { panjang = p; } // mengubahPanjang void PersegiPanjang::UbahLebar(int l) { lebar = l;} // mengubahLebar
-
IMPLEMENTASI DENGAN C++class PersegiPanjang { }; MengeremUbah girUbahputaranvoid HitungLuas(int,int);void HitungKeliling(int,int); public:private:- gir- kecepatan- putaranint panjang;int luas; Sepeda
-
IMPLEMENTASI DENGAN C++class PersegiPanjang { }; MengeremUbah girUbahputaranvoid HitungLuas();void HitungKeliling(); public:private:- gir- kecepatan- putaranint panjang;int lebar; SepedaPersegiPanjang(int, int); // konstruktor
-
IMPLEMENTASI DENGAN C++PersegiPanjang :: PersegiPanjang () { luas = keliling = 0; } // constructor void PersegiPanjang ::HitungLuas (int p, int l) { panjang = p; lebar = l; } // Hitung Luas void PersegiPanjang ::HitungKeliling(int p, int l) { panjang = p; lebar = l; } // Hitung Keliling
top related