Anda di halaman 1dari 21

BAB I – FUDAMENTAL

Metode Abstrak dan kelas abstrak,


Array , Interface
OLEH : FANDY CH & HARRY W
C#

BERBAGAI SUMBER & GOOGLE PENCARIAN


Metode Abstrak dan kelas abstrak
Pada saat – saat tertentu, terkadang kita ingin mendifenisikan suatu kelas dasar
yang di dalamnya berisi daftar metode yang tidak memiliki implementasi kode
sama sekali. Metode – metode tersebut baru akan di implementasi oleh kelas –
kelas turunan. Dalam pemrograman berorientasi objek, metode seperti ini disebut
dengan metode abstrak. Dengan kata lain, metode abstrak adalah yang tidak
lengkap karena hanya berupa deklarasi saja.
Bentuk umum dari metode abstrak :
abstract TipeDataKembalian NamaMetode(daftar-parameter);
Metode Abstrak dan kelas abstrak
Hal yang perlu anda perhatikan adalah metode abstrak secara otomatis akan
bersifat virtual sehingga kita tidak perlu menambahkan kata kunci virtual pada
deklarasi di atas. Jika hal itu dilakukan, justru akan mengakibatkan kesalahan
pada saat kode program di kompilasi.
Suatu kelas yang di dalamnya memiliki satu ( atau lebih ) metode yang bersifat
abstrak maka kelas tersebut disebut sebagai kelas abstrak. Dalam kelas abstrak,
kita masih di izinkan untuk mendefinisikan metode-metode normal ( non –
abstrak). Sama halnya dengan metode abstract, kelas abstract harus dideklarasikan
menggunakan kata kunci abstract.
Metode Abstrak dan kelas abstrak
Bentuk umum pendeklarasiannya adalah :

abstract class NamaKelas


{
// badan kelas
}
Kelas abstrak tidak dapat diinstanisasi. Ini berarti bahwa kita tidak dapat membuat
objek dari kelas abstrak. Meskipun demikian, kelas abstrak masih dapat di gunakan
untuk mendeklarasikan referensi. Selanjutnya, referensi tersebut dapat digunakan
untuk menunjuk ke objek-objek konkrit/actual yang di buat menggunakan kelas
turunan. Setiap kelas yang diturunkan dari kelas abstrak harus mengimplementasikan
metode-metode abstrak yang dideklarasikan dalam kelas abstrak bersangkutan.
Contoh :
Metode Abstrak dan kelas abstrak
Tiga hal yang perlu di perhatikan :
• Kelas abstrak dapat memiliki metode non-abstrak
• Kelas turunan harus melakukan override terhadap metode abstrak yang ada
pada kelas induk
• Referensi yang dideklarisasikan menggunakan kelas induk dapat di gunakan
untuk menunjuk ke sub kelas sehingga kita dapat melakukan pemanggilan
metode melalui referensi tersebut.
Array
Array adalah suatu struktur data yang dapat menyimpan data dengan tipe yang
sama dan diakses dengan menggunakan suatu indeks yang menunjukkan suatu
elemen didalam array tersebut. Dengan begitu array masih termasuk kedalam
bentuk polymorphism.
Array Dimensi Satu
Sebuah array dikatakan berdimensi satu jika:
1. Suatu nilai yang tersimpan dalam array tersebut ditentukan oleeh satu
kondisi (baris atau kolom).
2. Setiap elemen array dapat diakses melalui index
3. Index array secara default dimulai dari 0
Array Dimensi Satu
Ada dua cara untuk membuat array satu dimensi yaitu :
• tidak menentukan jumlah elemen array
tipe[] nama_array;
• dengan menentukan jumlah elemen array
tipe[] nama_array = new tipe[jumlah_elemen];
Contoh
Array Multi Dimensi
• Bentuk paling sederhana dari Array multidimensi adalah Array 2 Dimensi,
Array 2 dimensi merupakan gabungan dari 2 Array 1 Dimensi.
• Array 2 dimensi dapat juga digambarkan seperti sebuah tabel data, yang
memiliki beberapa baris dan kolom.
• Sebagai Contoh, kita akan membuat array dengan ukuran 2 dimensi 2 x 3
dengan tipe data integer :
Array Multi Dimensi
Dan hasilnya akan terlihat seperti tabel di bawah ini :
Array Multi Dimensi
Selain dengan cara diatas, kamu juga bisa menginisialisasi
array multidimensi dengan cara yang sama, dengan array satu dimensi.
Sebagai contoh:
Array Multi Dimensi
• Dengan Syntax di atas, kamu akan membuat array dengan ukuran 3 baris dan 2
kolom, untuk mengakses element dari array tersebut, maka cukup
panggil index array tersebut.
• contoh :
• kita akan mengakses angka 6, maka cukup tuliskan Arr[2.1]. kemudian angka 6
akan di panggil.
Contoh
Interface
Tadi kita baru saja mempelajari tentang metode dan kelas abstrak. Namun metode
abstrak itu dapat mendefinisikan metode yang bersifat non-abstrak. Jika semua metode
yang di deklarasikan berupa metode abstrak, maka seharusnya kita mendifinisikannya
sebagai interface, bukan sebagai abstrak.
Interface dalam bahasa Indonesia berarti antar muka. Bagian muka bisa dipahami
sebagai bagian yang terlihat sedangkan bagian belakang yang merupakan isinya tidak
kelihatan. Begitu juga dalam C#, interface berarti bagian muka. Dalam interface ini
hanya mendefinisikan daftar property, method dan event. Dalam interface ini tidak ada
pemrograman dalam method maupun event. Dengan kata lain kita dapat memahami
interface dalam C# ini sebagai standarisasi daftar property, method dan events yang
harus dimplementasikan oleh class-class lain yang merupakan turunannya.
Interface
Interface dideklarasikan menggunakan kata kunci interface dengan aturan
penulisan sebagai berikut :

interface NamaInterface{
TipeKembalian NamaMetode1(daftar-parameter);
TipeKembalian NamaMetode2(daftar-parameter);
TipeKembalian NamaMetode3(daftar-parameter);
}
Interface
Seperti yang tampak pada bentuk umum di atas, dalam interface semua metode
harus bersifat abstrak. Sifat abstrak ini di deklarasikan secara implisit oleh
kompilator C# sehingga kita tidak perlu lagi menyertakan kata kunci abstract. Hal
lain yang perlu kita perhatikan saat membuat interface adalah kita tidak di izinkan
untuk mendefinisikan metode non-abstrak di dalam suatu interface.
Contoh :
Interface
Setelah Interface di deklarasikan, kita dapat membuat kelas atau struktur yang
mengimplementasikan interface tersebut. Setiap kelas atau struktur yang
mengimplementasikan suatu interface wajib mengimplementasikan semua metode yang
dideklarasikan di dalam interface. Bentuk umum untuk membuat kelas yang
mengimplementasikan interface adalah sebagai berikut :
Interface
class NamaKelas : NamaInterface {
TipeKembalian NamaMetode1(daftar-parameter){
// implementasi metode
}
TipeKembalian NamaMetode2(daftar-parameter){
// implementasi metode
}
}
Contoh

Anda mungkin juga menyukai