pemrograman berorientasi obyek (c++)

Post on 02-Feb-2016

93 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Pemrograman Berorientasi Obyek (C++). Departemen Ilmu Komputer FMIPA IPB 20 1 3. C++. C diambil sebagai landasan dari C++ Mendukung Pemrograman Berorientasi Obyek (PBO) Bersifat Reusability (kemudahan untuk digunakan kembali pada program-program lain) Ditulis dengan ektensi .CPP - PowerPoint PPT Presentation

TRANSCRIPT

Pemrograman Berorientasi Obyek (C++)

Departemen Ilmu Komputer FMIPA IPB 2013

C++ C diambil sebagai landasan dari C++ Mendukung Pemrograman Berorientasi Obyek

(PBO) Bersifat Reusability (kemudahan untuk

digunakan kembali pada program-program lain) Ditulis dengan ektensi .CPP .CPP + .H → dikompile .OBJ Dengan file obyek lain + .LIB → dikaitkan

menjadi satu oleh linker → file executable (.EXE)

Pemrograman Berorientasi Obyek

Data/Atribut

Fungsi Anggota/Method

Fungsi Anggota/Method

Objek dan Kelas Dalam PBO → obyek adalah anggota dari kelas

(class) Contoh:

class : Penyanyi Jazz obyek : Al Jarreau, Salena Jones, Michael Frank

class : Mahasiswaobjek : G64076001, G64076010, G64076030

Karakteristik PBO Tiga karakteristik utama PBO:1. Encapsulation :

pengemasan data dan fungsi dalam wadah bernama obyek. Data memiliki kedudukan yang sama dengan fungsi.

2. Inheritancesifat dalam bahasa berorientasi obyek yang memungkinkan sifat-sifat dari suatu kelas diturunkan ke kelas lain

3. Polymorphismsesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda

Kompiler C++ Microsoft Corporation :

Microsoft C/C++ dan Visual C++

Borland International : Turbo C++ dan Borland C++

Tipe dataTipe Data Ukuran Memori Jangkauan Nilai

Char 1 byte -128 hingga +127

Int 2 byte -32768 hingga +32767

Long 4 byte -2.147.438.648 hingga +2.147.438.647

Float 4 byte 3.4x10^-38 hingga 3.4x10^+38

Double 8 byte 1.7x10^-308 hingga 1.7x10^+308

Long double

10 byte 3.4x10^-4932 hingga 1.1x10^4932

#include <iostream>using namespace std;int main(){

char kar; kar = 'A';cout << "Isi Kar = " << kar << "\n";

int bil; bil = 32763;cout << "Isi Bil = " << bil << "\n";

long jum_penduduk; jum_penduduk = 170123456;cout << "Jumlah Penduduk = " << jum_penduduk << "\n";

float flo; flo = 1.23e2;cout << "Isi Flo = " << flo << "\n";

int jumlah = 10;cout << "Isi Jumlah = " << jumlah << "\n";

system("PAUSE");return 0;

}

Class

Departemen Ilmu Komputer FMIPA IPB2013

Struktur dan Kelas Kelas merupakan struktur data dari obyek Struktur (struct) memiliki persamaan dengan kelas (class). Contoh struktur (deklarasi struktur)

struct Buku{

char judul[35];char pengarang[25];int jumlah;

};

Contoh class (deklarasi kelas) Format :class Buku{

char judul[35];char pengarang[25];int jumlah;

}

Mendefinisikan/create suatu variable (struct) atau obyek (class)Buku novel;

Kebanyakan pemrograman C++ menggunakan nama kelas dengan awalan huruf kapital

Contoh Struct

Contoh Class

Access Specifier (Public) public: digunakan agar baris coding yang ada di bawahnya dapat

diakses dari luar kelas

class Buku{

char judul[35];…

}

class Buku

{

public :

char judul[35];

}

Public menyebabkan anggota yang ada di bawahnya dikenal di luar kelas Buku

Secara bawaan hanya dikenal oleh kelas buku (identik dengan private)

Contoh Class - Public

Access Specifier (Private) private: digunakan pada kelas untuk memproteksi anggota-

anggota tertentu pada kelas, agar tidak dapat diakses di luar kelas secara langsung

Pada contoh diatas public: → private:

Kata kunci private dapat ditiadakan karena secara default dari kelas adalah private

Private pada kelas dapat diibaratkan dengan suatu klub yang hanya diperuntukkan bagi anggotanya saja.

Contoh Class - Private

OOP Pada pemrograman berorientasi obyek, data dan fungsi harus

dirancang secara bersamaan Misal, terdapat data:

Judul buku Nama pengarang Jumlah buku

pada awal perancangan harus dipikirkan fungsi-fungsi dasar yang digunakan untuk mengakses ketiga data tersebut. Fungsi-fungsi tersebut dapat berupa

Mengisikan data Manampilkan data Manipulasi/Update data

Next !

Mendefinisikan beberapa obyek Buku novel, fiksi; Jika terdapat lebih dari satu obyek dan obyek-obyek tersebut

memiliki kelas yang sama, data anggota pada masing-masing obyek bersifat terpisah

Assignment nilai antar obyek (hanya untuk data anggota yang tidak mengandung pointer)

fiksi = novel;

Deklarasi kelas sama dengan slide 20

Alternatif penulisan fungsi anggota

Cara mendefinisikan fungsi anggota Fungsi anggota didefinisikan di dalam deklarasi kelas Pada kelas hanya terdapat deklarasi fungsi anggota (protototipe),

sedangkan definisi fungsi anggota ditempatkan di luar kelas Pada Cara 2

void Buku :: inisialisasi (char *Judul, char *Pengarang, int Jumlah){

strcpy(judul, Judul); strcpy(pengarang, Pengarang); jumlah=Jumlah;

};

Nama kelas Nama fungsi anggota

Nama anggota data kelas Buku

Return value

main program sama dengan slide 20 atau 22

Konstruktor dan Destruktor

Departemen Ilmu Komputer FMIPA IPB2013

Konstruktor Konstruktor adalah fungsi anggota yang mempunyai nama yang

sama dengan nama kelas dan dijalakan secara otomatis saat suatu obyek diciptakan

Konstruktor tidak memiliki nilai balik

Konstruktor harus diletakkan pada bagian public

Fungsi: Mengalokasikan ruang bagi sebuah obyek Memberikan nilai awal terhadap anggota data suatu obyek Membentuk tugas umum lainnya

Contoh Class - Konstruktor

Next !

Contoh Class - Konstruktor

Destruktor Destruktor adalah fungsi anggota kelas yang akan dijalankan

secara otomatis pada saat suatu obyek akan dihapus (dealokasi)

Nama destruktor sama seperti konstruktor, hanya saja diawali dengan karakter tak hingga/tilde (~)

Contoh Class – Konstruktor Destruktor

Contoh Class – Konstruktor Destruktor

Konstruktor dengan Argumen

Konstruktor, Destruktor dan Pengalokasian Dinamis

Latihan Lakukan analisis terhadap Sistem Informasi Akademik (SIMAK) yang Anda

ketahui Buatlah class diagram dari SIMAK tersebut Implementasikan class diagram tersebut dengan menggunakan C++ (jika

perlu, berikan/gunakan contoh sederhana untuk memperjelas hasil implementasi Anda)

top related