algoritma dan pemrograman 2 - reezeki2011 · • class merupakan struktur data dari objek •...
TRANSCRIPT
ALGORITMA DAN PEMROGRAMAN 2
3 SKS By : Sri Rezeki Candra Nursari
MATERI
• Teks/string• Pointer• File• Struktur• Kelas/Class• Konstruktor dan
Destruktor• Kelas dan Obyek
• Overloading Operator• Inheritance (Pewarisan)• Polimorfisme • Template Fungsi dan
Kelas• Sort• Search
CLASS
Pertemuan 05
3 SKS
Pendahuluan Class• Class merupakan struktur data dari objek• Sebuah class (kelas) yang menyerupai struktur
dapat dibuat dengan menggantikan kata structdengan class
• Persamaan struktur dengan kelas, pada cara mendeklarasikan, mendefinisikan dan cara akses
• Sedangkan perbedaan struktur dengan kelas adalah kelas mempunyai access specifier (penentu akses), sedangkan struktur tidak mempunyai access specifier (penentu akses)
Struktur vs Kelas/ClassPersamaan :
• Cara deklarasistruct cthStruct{
int b;........
};
• Cara definisi variabel/objek
cthStruct x;
• Cara aksesx.a = 22;
• Cara deklarasiclass cthClass
{int b;........
};
• Cara definisi variabel/objek
cthClass x;
• Cara aksesx.a = 22;
Struktur vs Kelas/ClassPerbedaan :
struct cthStruct{
int b;........
};
class cthClass{
public;int b;........
};
Kelas/Class• Kelas digunakan untuk mendefinisikan obyek• Contoh : tipe data digunakan untuk
mendefinisikan variabel• Obyek melingkupi anggota data dan fungsi
anggota• Nama kelas biasanya dimulai dengan huruf besar• Pendefinisian Kelas:
• Pendefinisian obyek:NamaKelas Nama_Obyek
Penentu Akses (Access Specifier)
• Digunakan untuk menentukan anggota data atau fungsi anggota mana yang boleh diakses dan oleh siapa
• Ada 4 macam penentu akses(access specifier)/level access modifier: – Public– Default– Private– Protected
Penentu Akses (Access Specifier)
• Public– Bisa diakses dari luar kelas (bersifat global)– Maka semua class yang lain dapat melihat class
tersebut– Dapat melakukan import, instansiasi, extends,
dan memanggil method yang ada dalam class
• Default– Maka hanya class dari package yang sama atau
class turunannya yang dapat melihat class tersebut
Penentu Akses (Access Specifier)
• Private– Hanya bisa diakses dari dalam kelas (bersifat lokal)– Hanya dapat digunakan oleh inner class saja, sedangkan
class lain tidak dapat ditandai sebagai private
• Protected– Sama dengan Private dan bisa diakses oleh kelas-kelas
turunan– Class tidak dapat dideklarasikan sebagai protected
Penentu Akses Public• Dengan menggunakan penentu akses
publik, anggota data dan fungsi anggota bisa diakses dari luar kelas
• Contoh :class Buku{
public:char judul[30];.................
}
Penentu Akses Private• Digunakan untuk memproteksi anggota-
anggota tertentu pada kelas agar tidak bisa diakses secara langsung dari luar kelas
• Biasanya yang menggunakan penentu akses private adalah anggota data
• Biasa digunakan pada kelas untuk memproteksi anggota-anggota tertentu pada kelas, agar tidak dapat diakses di luar kelas secara langsung
Penentu Akses Private• Penentu akses private adalah nilai default sehingga
kalau penentu akses tidak ditentukan, maka dianggap menggunakan penentu akses private
• Contoh :class Buku{
private:char judul[30];.................
}
Fungsi Anggota• Ada dua macam cara penulisan fungsi anggota. • Cara 1 : Fungsi didefinisikan didalam kelas
Fungsi Anggota Cara 2 :
prototipe fungsi dideklarasikan dalam kelas, definisi fungsi diletakkan diluar kelas dibawah fungsi main()
Class vs Object
• Object adalah instansiasi dari sebuah class• Class itu sebagai sebuah cetakan
sedangkan object itu adalah barang dari hasil cetakan
• Class juga dapat dikatakan sebagai kategori, sedangkan object adalah sesuatu yang memuhi syarat-syarat yang harus dipenuhi agar masuk dalam kategori tersebut
Class vs Object
• Jadi satu class dapat mempunyai banyak object
• Setiap object mempunyai sifat yang sama persis seperti yang didefinisikan dalam class tersebut
• Contoh : Mendefinisikan beberapa obyekMtKuliah Jur_IT, Jur_TI;MtKuliah DtMtKuliah[22];
Menyalin Isi Obyek• Kedua obyek harus berasal dari kelas yang
sama• Contoh
JurIT = JurTI;• Isi obyek JurIT sama dengan isi obyek Jur_TI• Jika dalam suatu kelas terdapat anggota data
berupa pointer, maka penyalinan isi obyek berbentuk :
Obyek2 = Obyek1;
Struktur
Contoh Soal 01:Perintah menampilkan struktur buku dengan 3 attribut/field (Judul, Pengarang dan Jumlah Buku yang tersedia)
Programcontoh 01
Algoritma.........?????Pseudocode.......??????
Kelas
Contoh Soal 02:Perintah menampilkan obyek komik dari class buku dengan 3 attribut/field (Judul, Pengarang dan Jumlah Buku yang tersedia)
Menggunakan penentu akses public
Programcontoh 02
Algoritma.........?????Pseudocode.......??????
Kelas
Contoh Soal 03:Perintah menampilkan obyek komik dari class buku dengan 3 attribut/field (Judul, Pengarang dan Jumlah Buku yang tersedia)
Menggunakan penentu akses private
Programcontoh 03
Algoritma.........?????Pseudocode.......??????
Kelas
Contoh Soal 04:Perintah menampilkan obyek komik dari class buku dengan 3 attribut/field (Judul, Pengarang dan Jumlah Buku yang tersedia)
Menggunakan fungsi anggota dengan format kelas::data
Programcontoh 04
Algoritma.........?????Pseudocode.......??????
TUGAS
• Buat kelompok dengan anggota sebanyak 3 orang
Berdasarkan Contoh Soal 02, 03,04:Buat dengan data diinput???