Anda di halaman 1dari 20

Grafik Komputer

Pertemuan 3

Institut Teknologi Garut


Teknik Informatika
• Class adalah salah satu dari konsep OOP yang digunakan untuk membungkus data
abstraksi procedural sebagai deskripsi tergeneralisir atau rancangan dari
sebuah object untuk mendefinisikan atau menggambarkan isi dan tingkah laku
sebagai entitas dari object.
Cara Mendirikan Class

• Untuk mendirikan Class kita membutuhkan keyword class yang


dilanjutkan dengan pemberian nama dari deklarasi class tersebut. lalu
dilanjutkan dengan meletakan tanda { dan } untuk mengapit definisi
dari class.
• Class termasuk sebuah pernyataan maka dari itu akhir dari deklarasi
class diwajibkan untuk mengakhiri class menggunakan tanda titik-
koma ;
Bentuk penulisan
class nama_class{ •nama_class : tempat dimana anda dapat memberikan
nama pada class tersebut.
akses_specifier : •akses_specifier : tempat dimana anda dapat
data_member; mendifinisikan hak akses kepada anggota yang ada
dibawahnya. Jika tidak didefinisikan maka
… anggota class secara otomatis memiliki hak akses private.
akses_specifier2 : •data_member : tempat dimana anda dapat mendirikan
sebuah variabel atau function sebagai anggota dari class.
data_member; •nama_object : tempat dimana anda dapat mendirikan
… object-object dengan menggunakan class tersebut, hal ini
merupakan opsional tapi jika class tidak diberi nama class
}nama_object; maka diwajibkan mendirikan object, karena kita tidak akan
bisa membuat object dengan class di luar dari deklarasi
class tersebut.
• Class dan Object merupakan fitur yang sangat membantu untuk
mendirikan sebuah program besar, menjadikan sebuah code program
yang ditulis oleh programmer mudah untuk dimengerti, lebih
terstruktur, dan juga mudah dalam pemeliharaan program.
• Terdapat banyak fasilitas yang disediakan oleh class, yaitu dapat
menampung member variabel, function, constructor, desctructor,
overloading dan lain-lain. Diluar definisi class kita juga dimungkinkan
untuk membuat relalasi seperti inheritance dan overriding.
Contoh penulisan
• Potongan program disamping merupakan program yang mencontohkan
bagaimana cara mendirikan dan mendefinisikan sebuah class dengan
nama class mahasiswa.
class mahasiswa{ • Di dalam class pada baris pertama isi dari class terdapat akses specifier
public: public yang berarti semua anggota di bawah label itu akan bersifat bebas
int nim; untuk diakses dari dalam maupun dari luar class.
string nama; • Baris kedua sampai empat definisi dari class terdapat tiga variabel nim,
float nilai; nama dan nilai dengan tipe data int, string dan float yang merupakan
void printData(){ member variable dari class tersebut.
cout<<"NIM \t= "<<nim<<endl; • Dan pada baris berikutnya terdapat anggota yang berupa member
cout<<"Nama \t= "<<nama<<endl; function atau biasa disebut method, yang mempunyai definisi dengan
cout<<"Nilai \t= "<<nilai<<endl; tugas untuk mencetak nilai dari anggota variabel di atasnya.
} • Dan baris terakhir dari luar class anton diantara tanda } dan ; adalah
}anton; sebuah object yang telah didirikan di dalam deklarasi class. Object yang
didirikan pada deklarasi class merupakan opsional, anda juga dapat
mendirikan object lebih dari satu di dalam deklarasi class, untuk setiap
object akan dipisahkan dengan tanda koma ,.
Cara mendirikan Object

• Mendirikan class seperti halnya kita membuat sebuah kerangka atau blueprint
untuk object. Terdapat dua cara untuk mendirikan object pada class, yaitu:
1. Pertama, Mendirikan object di dalam deklarasi Class: Seperti contoh
sebelumnya, bahwa kita dapat membuat object setelah definisi dari class
yaitu tepat di antara tanda } dan ;. Memberi object setelah definisi class
tidak diharuskan, tapi dapat dilakukan dan kita bisa membuat object lebih
dari satu dengan memisahkan masing-masing object dengan tanda koma ,.
Contoh penulisan

class mahasiswa{
public: Cara ini akan wajib digunakan
int nim; ketika class yang didirikan adalah anonymous
string nama; class atau class yang tidak memiliki nama.
float nilai;
void printData(){
cout<<"NIM \t= "<<nim<<endl;
cout<<"Nama \t= "<<nama<<endl;
cout<<"Nilai \t= "<<nilai<<endl;
}
}anton, budi, tono;
2. Kedua, Mendirikan object di luar deklarasi Class: Mendirikan object sama seperti kita
mendirikan variabel, yang berbeda adalah nama dari class akan digunakan sebagai tipe data
dari object.
Contoh penulisan
mahasiswa anton;
mahasiswa budi, tono;
//atau
class mahasiswa anton;
• Dalam mendirikan object class kita bebas untuk menambahkan keyword class atau tidak
menambahkannya sebelum nama dari class tersebut, karena semua bentuk penulisan memiliki arti
yang sama.
• Contoh program
#include <iostream>
using namespace std;

class mahasiswa{
public:
int nim;
string nama;
float nilai;
void printData(){
cout<<"NIM \t= "<<nim<<endl;
cout<<"Nama \t= "<<nama<<endl;
cout<<"Nilai \t= "<<nilai<<endl;
}
};

int main() {
mahasiswa tanto,budi,adi;
return 0;
}
Cara Mengakses Object

• Setelah kita berhasil mendirikan object. object tersebut akan sepenuhnya memiliki bentuk
berdasarkan rancangan pada class yang dipakai. Untuk mengakses Object dan member dari
object tersebut kita membutuhkan “Member Access Operator .” yang diletakan di antara nama
object dan nama member.
• Contoh penulisan
anton.nim;
anton.nama;
anton.nilai;
anton.printData();
Contoh program
#include <iostream>
using namespace std;

class mahasiswa{
public:
int nim;
string nama;
float nilai;
void printData(){
cout<<"NIM \t= "<<nim<<endl;
cout<<"Nama \t= "<<nama<<endl;
cout<<"Nilai \t= "<<nilai<<endl;
}
};

int main() {
mahasiswa anton;
anton.nim=1234;
anton.nama="Anton Cpluzer";
anton.nilai=95;
anton.printData();
return 0;
}
Cara Inisialisasi Object

• Terdapat tiga cara untuk inisialisasi object, yaitu:


• Non-static Member Initialization, merupakan cara untuk memberikan nilai awal
(Inisialisasi) di saat mendirikan variabel sebagai member class. Maka nilai awal itu
akan berlaku pada semua object yang menggunakan class tersebut. dan cara ini
hanya tersedia pada C++11 ke atas.
Contoh program
#include <iostream>
using namespace std;

class mahasiswa{
public:
int nim=1; //inisialisasi
string nama="default name"; //inisialisasi
float nilai=0; //inisialsiasi

void setterNilai (float aNilai){


nilai=aNilai;
}
void printData(){
cout<<"NIM \t= "<<nim<<endl;
cout<<"Nama \t= "<<nama<<endl;
cout<<"Nilai \t= "<<nilai<<endl;
}
};

int main() {
mahasiswa anton,budi;
cout<<"==Anton=="<<endl;
anton.printData();
cout<<"==Budi==="<<endl;
budi.printData();

return 0;
}
• Uniform Initialization, merupakan cara kedua untuk inisialisasi member pada object.
Dengan cara memberikan nilai awal kepada member class saat mendirikan object,
inisialisasi harus disebutkan dengan urut berdasarkan urutan deklarasi member.
inisialisasi ini hanya akan berlaku pada object itu sendiri. Tapi kelemahanya, cara ini
hanya bisa dilakukan jika semua member dari class bersifat public.
• Contoh penlisan

1mahasiswa anton = {123,"Antonia uvava osas",98.5}; //atau


2mahasiswa albert {234,"Albert Insting", 101.5}; //C++11
Contoh program
#include <iostream>
using namespace std;

class mahasiswa{
public:
int nim;
string nama;
float nilai;
void printData(){
cout<<"NIM \t= "<<nim<<endl;
cout<<"Nama \t= "<<nama<<endl;
cout<<"Nilai \t= "<<nilai<<endl;
}
};

int main() {
mahasiswa anton = {123,"Antonia uvava osas",98.5};
mahasiswa albert {234,"Albert Insting", 101.5};

anton.printData();
albert.printData();
return 0;
}
• Member Initialization In Constructor, Merupakan cara ketiga dan penulis
sarankan untuk digunakan karena memiliki level keamanan yang cukup tinggi.
Membuat rectangle menggunakan class pada openGL
Membuat rectangle menggunakan class pada openGL
Membuat rectangle menggunakan class pada openGL

Anda mungkin juga menyukai