Firman Asharudin | Pemrograman Lanjut Object Oriented C# Firman Asharudin | Pemrograman Lanjut Class, Access Spesifier, Encapsulation | 2016
Class Class merupakan penggambaran dari sebuah object atau benda,sifat objek, dan juga apa yang bisa dilakukan oleh objek tersebut. Diijinkan atau tidaknya kelas lain untuk mengakses anggota dari sebuah kelas bergantung pada access spesifier (hak akses) yang ditentukan dalam baris kode. Firman Asharudin | Pemrograman Lanjut
//Contoh Deklarasi Class class nama_class { atribut /*deklarasi variabel */ metode /*deklarasi metode*/ } Firman Asharudin | Pemrograman Lanjut
Methode Method merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object. Contoh : pada object mangga : terdapat method ambilRasa , kupasKulit dll. Metode menentukan perilaku objek, yakni apa yang terjadi ketika objek itu dibuat serta berbagai operasi yang dapat dilakukan objek. Firman Asharudin | Pemrograman Lanjut
Atribut Atribut adalah suatu pengenal yang digunakan untuk menyimpan suatu nilai. Nilai dalam variabel dapat berubah2 selama proses pada program masih berlangsung. Sebelum variabel digunakan, harus dideklarasikan terlebih dahulu, dengan format penulisan : Contoh: String kata; Int angka; Firman Asharudin | Pemrograman Lanjut
Object Object adalah sebuah structure yang menggabungkan data dan prosedur untuk bekerja bersama-sama. Object merupakan suatu bentuk dari class. Contoh : Object dari class Hewan adalah Burung, Kambing, Ayam, Kuda. Mereka adalah contoh dari class Hewan. Semua dari mereka adalah Hewan yang mempunyai Atribut : nama, kaki, Jenis makanan dst. Dan Methode bisa berlari, bersuara, berkembang biak dll. Firman Asharudin | Pemrograman Lanjut
Perbedaan Class dengan Objek Class: Manusia Attribute: Berat Badan, Tinggi Badan, Jenis Kelamin Method: Bernafas, Makan, Minum, Bekerja, Belajar, Tidur Object: Budi Attribute: 75 kg, 175 cm, Pria Firman Asharudin | Pemrograman Lanjut
Access Spesifier public membuat member yang bersangkutan dapat diakses dari mana saja. private membuat member yang bersangkutan hanya dapat diakses dari dalam class itu sendiri. protected membuat member yang bersangkutan hanya dapat diakses dari class itu sendiri atau class lain yang merupakan turunan (inherits) dari class yang bersangkutan. internal membuat member yang bersangkutan hanya dapat diakses dari assembly yang sama, atau dengan kata lain, aplikasi yang sama. protected internal menggabungkan protected dan internal, yang berarti member yang bersangkutan hanya dapat diakses dari class itu sendiri atau dari class lain dari dalam assembly yang sama yang merupakan turunan dari class yang bersangkutan. Firman Asharudin | Pemrograman Lanjut
Hanya class di dalam class lain yang dapat dideklarasi seperti itu. Perlu diketahui bahwa class puncak yang langsung berada di bawah suatu namespace hanya dapat dideklarasi public atau internal. Mereka tidak dapat dideklarasi private, protected atau protected internal. Hanya class di dalam class lain yang dapat dideklarasi seperti itu. Perlu diketahui juga bahwa kata kunci static dan virtual bukanlah suatu access modifier. Firman Asharudin | Pemrograman Lanjut
Encaptulation Enkapsulasi adalah proses membungkus satu atau beberapa item ke dalam sebuah package fisik atau logic. Enkapsulasi diimplementasikan menggunakan akses spesifier. C# mendukung hak akses adalah Public, Private, Protected, Internal, dan Internal protected Firman Asharudin | Pemrograman Lanjut
Konstruktor Kontruktor merupakan suatu method yang akan memberikan nilai awal pada saat suatu objek dibuat. Pada saat program dijalankan, konstructor akan langsung memberikan nilai awal pada saat perintah new, membuat suatu objek. Pada saat bekerja dengan konstruktor, hal mendasar yang perlu diperhatikan, yaitu: 1. Nama Constructor sama dengan nama Class. 2. Tidak ada return type yang diberikan kedalam Constructor Signature. 3. Tidak ada return stetement, didalam tubuh constructor. Firman Asharudin | Pemrograman Lanjut
//contoh konstruktor … public penjumlahan (param a, param b) { This.a = a; This.b = b; } Firman Asharudin | Pemrograman Lanjut
Destructor Destruktor merupakan anggota fungsi special pada sebuah kelas yang akan dieksekusi ketika sebuah objek dari kelas keluar dari ruang lingkup (goes out of scope). Sebuah destructor memiliki nama yang sama persis dengan nama kelasnya dengan ditambahkan symbol (~). Destruktor sangat berguna untuk melepaskan sumber daya memori sebelum keluar dari program. Destruktor tidak dapat diwariskan atau di-Overload.. Firman Asharudin | Pemrograman Lanjut
Console.WriteLine("Mobil " + nama + " telah dihancurkan"); ntuk membuat suatu destructor, cukup membuat suatu method dengan nama yang sama dengan nama class diawali dengan tanda tilde (~). Sebagai contoh: ~Mobil() { Console.WriteLine("Mobil " + nama + " telah dihancurkan"); Firman Asharudin | Pemrograman Lanjut
//Contoh Konstruktor & Destructor class Program { public static void Main(string[] args) Konstruk kon = new Konstruk(); kon.Show(); Console.WriteLine(); Console.Write("Press any key to continue . . . "); Console.ReadKey(true); } Firman Asharudin | Pemrograman Lanjut
public Konstruk() // <<--- Construktor { class Konstruk { public int A,B; public Konstruk() // <<--- Construktor { Console.WriteLine(" =================================="); Console.WriteLine(" = Constructor ="); Console.WriteLine(); //inisialisasi A = B = 10; } Firman Asharudin | Pemrograman Lanjut
~Konstruk() // <<--- Destruktor { Console.WriteLine("Finalizing"); } public void Show() Console.WriteLine("Nilai A = {0}",A); Console.WriteLine("Nilai B = {0}",B); Console.WriteLine(); Console.WriteLine("Hasil Perkalian = {0}",A*B); Firman Asharudin | Pemrograman Lanjut
To be continue… Firman Asharudin | Pemrograman Lanjut