Relasi Kelas
Jenis
relasi antar kelas terdiri dari pewarisan, agregasi, asosiasi. Pewarisan
merupakan hubungan antar satu kelas dengan kelas dengan kelas yang lain dalam
suatu hirarki kelas induk dan kelas turunan. Superclass (“kelas dasar” atau
“kelas induk”) merupakan kelas yang lebih general dalam relasi “is – a”.
Subclass (“kelas turunan” atau “kelas anak”) merupakan kelas yang lebih
spesifik dalam relasi “is – a”. objek yang dikelompokkan dalam sub kelas
memiliki atribut dan perilaku kelas induk, dan juga atribut dan perilaku
tambahan. Kita mengatakan subclass “mewarisi” suatu superclass (atau juga bisa
dikatakan sebuah subclass “turunan dari” suatu superclass).
Ada
beberapa karakteristik yang di-share oleh semua kelompok. Relasi antara
kelas-kelas ini disebut dengan relasi
“is-a”. Dalam setiap kasus, objek yang dikelompokkan bersama dalam satu
sub-kategori merupakan anggota dari kategori yang lebih umum. Contohnya adalah
seperti dibawah ini.
·
Mobil adalah (“is-a”) kendaran bermotor.
·
Truk adalah (“is-a”) kendaran bermotor.
·
Sepeda motor adalah (“is-a”) kendaran
bermotor.
Download file lengkapnya disini.
Objek yang
dikelompokkan dalam satu kelas men-share sekumpulan atribut dan perilaku. Jadi,
seluruh objek kendaraan bermotor memiliki sekumpulan atribut dan perilaku yang
juga dimiliki oleh objekdari mobil. Keterkaitan antar kelas dalam relasi “is-a”
berasal dari kenyataan bahwa sub kelas memiliki atribut dan perilaku yang
dimiliki kelas induk, ditambah atributt dan perilaku yang dimiliki oleh sub
kelas tersebut.
Superclass
(“kelas dasar” atau “kelas induk”) merupakan kelas yang lebih general dalam
relasi “is-a”. subclass ( “kelas turunan” atau “kelas anak”) merupakan kelas
yang lebih spesifik dalam relasi “is-a”. objek yang dikelompokkan dalam sub
kelas memiliki atribut dan perilaku sub kelas induk, dan juga atribut dan
perilaku tambahan. (jadi, kumpulan atribut dan perilaku sub kelas lebih besar
dari super kelas-nya). Relasi “is-a” antar superclass dan subclasses-nya
disebut dengan pewarisan dan inheritance.
Subclass
“mewarisi” sesuatu superclass (atau juga bisa dikatakan sebuah subclass
“turunan dari” suatu superclass) karena reusabilitas perangkat lunak, membuat
kelas baru (kelas turunan) dari kelas yang sudah ada (kelas dasar), kelas
turunan mewarisi kelas induk yang mendapatkan data dan perilaku , merupakan
bentuk special dari kelas induk, dan diperluas dengan perilaku tambahan.
Pewarisan
ada dua jenis yaitu pewarisan tunggal dan pewarisan jamak. Pada protected acces, protected members dapat diakses oleh member kelas dasar, friend
kelas dasar, member kelas turunan, dan rriend kelas turunan. Kelas turunan
dapat merujuk/mengakses langsung public
dan protected data member kelas
induk dengan menggunakan nama atribut yang diakses.
Agregasi
merupakan hubungan antar kelas yang menyatkan suatu kelas merupakan bagian dari kelas yang lain atau
hubungan antar kelas yang menyatakan suatu kelas memiliki kelas lain [sebagai atribut]. Agregasi merupakan relasi
“has a”. Contoh :
·
Mobil memiliki mesin.
·
Fakultas terdiri atas jurusan.
·
Rumah memiliki dapur.
Mobil, fakultas dan
rumah dinyatakan sebagai kelas agregat. Mesin, jurusan dan dapur merupakan
kelas penyusun.
Kardinalitas
menyatakan jumlah objek penyusunan yang terlibat dalam pembentukan relasi
agregasi. Suatu kelas agregat dibentuk dari beberapa (disimbolkan dengan *)
objek kelas penyusun.
Asosiasi
menggambarkan hubungan struktural antar kelas. Setiap kelas memiliki kedudukan
yang sama (tidak merupakan bagian dari kelas lain). Pada saat merancang relasi
antar kelas, ada dua hal yang perlu diperhatikan yaitu berapa objek yang
terlibat dan masing-masing kelas yang berelasi dan apakah relasi tersebut
bersifat wajib (mandatory) atau
opsional.
Download file lengkapnya disini.
BAB
II
CODING
PROGRAM
BAB III
PEMBAHASAN
Dalam program KRS ini kita mempunyai 2 kelas yaitu class
mahasiswa dan class mata_kuliah yang menggunakan relasi Pewarisan karena class
mahasiswaadalah sebagai kelas induk yang mewarisi sifatnya terhadap class mata_kuliah yang merupakan kelas
anak.
·
Dalam program KRS ini kita membutuhkan
beberapa header diantaranya.
#include<stdio.h>
#include<conio.h>
#include<iomanip.h>
#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<windows.h>
|
Berikut
ini fungsi-fungsi dari header diatas:
-
stdlib.h dipergunakan untuk prototype fungsi operasi
matematika seperti : sqrt (akar kuadrat), sin, cos, tan, acos, asin, atan,
atan2, cosh, sinh, tanh, exp, prexp, ldexp, log, log10, modf, pow, ceil, fabs,
fmod
-
conio.h digunakan Fungsi-fungsi pustaka yang umum digunakan untuk
menampilkan hasil seperti bila melibatkan clrscr( ), yaitu perintah untuk
membersihkan layar dan fungsi getch( ) untuk menerima sembarang input keyboard
dari user.
-
iomanip.h diperlukan bila melibatkan setw( ) yang bermanfaat untuk mengatur
lebar dari suatu tampilan data.
-
Stdlib.h adalah
fungsi-fungsi pustaka yang umum digunakan untuk menampilkan hasil prototype-nya
berada di file judul.
-
iostream.h diperlukan pada program yang melibatkan objek cout dan cin
-
windows.hdan
string.h diperlukan bila melibatkantipe string dan fungsi
gotoxy digunakan untuk menempatkan kursor ditempat yang tidak dapat di capai
bila kita hanya menggunakan sekuensi program saja.
Include Merupakan salah satu pengarah Prepocessor
Directive yangDownload file lengkapnya disini.
0 Komentar