Tugas Struktur Data dan Algoritma
1. Class, Attribute, dan Method
·
Class : model yang berisi kumpulan attribute
dan method dalam suatu unit untuk suatu tujuan tertentu. Sebuah class
merupakan dasar dari modularitas dan struktur dalam pemrograman berorientasi
object.
contoh :
Class Person, Vehicle, Tree, Fruit dan lain-lain.
·
Attribute : nilai data yang terdapat pada
suatu object yang berasal dari class. Attribute merepresentasikan karakteristik
dari suatu object.
contoh :
Class Fruit terdapat attribute warna, berat
·
Methode : 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 dan lain-lain.
2.
Object
·
Object : perwujudan dari class,
setiap object akan mempunyai attribute dan method yang
dimiliki oleh class-nya. Setiap object dapat berinteraksi dengan object
lainnya meskipun berasal dari class yang berbeda
Contoh :
Dari class Fruit kita dapat
membuat object Mangga, Pisang, Apel dan lain-lain.
3.
Cara Membuat Object
Untuk membuat object, kita menggunakan perintah new dengan sebuah
nama class yang akan dibuat sebagai instance dari class tersebut.
Contoh :
class Date
class Date
{
Date hari = new Date();
Date hari = new Date();
}
hari adalah object reference dari class Date yang akan digunakan untuk mengakses class Date. Sedangkan operator new adalah operator yang akan menghasilkan hari sebagai reference ke instance dari class Date().
hari adalah object reference dari class Date yang akan digunakan untuk mengakses class Date. Sedangkan operator new adalah operator yang akan menghasilkan hari sebagai reference ke instance dari class Date().
4.
Konstruktor
·
Konstruktor : suatu method yang akan
memberikan nilai awal pada saat suatu objek dibuat. Pada saat program
dijalankan, constructor akan langsung memberikan nilai awal pada saat perintah
new, membuat suatu objek
Pada saat kita bekerja dengan constructor, hal mendasar yang perlu diperhatikan, yaitu :
Pada saat kita bekerja dengan constructor, 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.
5.
Private, Protected, dan Public
·
Private : Menyatakan bahwa kelas tersebut
tidak dapat diakses sama sekali oleh kelas lain bahkan juga tidak dapat
diturunkan. Berarti attribute-attribute yang private hanya dapat diakses oleh
method-method dalam kelas yang sama, kelas lain masih dapat mengakses melalui
method-method tersebut asal modifiernya public.
·
Protected : Menyatakan bahwa
kelas/method/attribute tersebut dapat diakses oleh kelas lain yang berada dalam
satu package atau kelas lain tersebut merupakan turunannya.
·
Public : Menyatakan bahwa
kelas/method/attribute tersebut dapat diakses oleh kelas lain dimanapun.
6.
Karakteristik OOP
·
Inherintence
(pewarisan):
merupakan konsep dimana suatu object
memiliki sejumlah perilaku yang dimiliki oleh object lain dalam suatu hirarki
tertentu.
Penulisan inheritance di C# sebagai berikut
public class ListBox : Window
Kode diatas berarti class ListBox adalah turunan dari class Window.
• Contoh
Inherintence :
1: public class Window {
2: //variabel
dideklarasikan private
sehingga tidak bisa
diakses oleh kelas
3: //turunannya
4:
private int top;
5:
private int left;
6:
7: //objek konstruktor
8: public
Window(int top, int left) {
9:
this.top = top;
10:
this.left = left;
11: }
12:
13: public void
DrawWindow() {
14:
Console.WriteLine(“Draw window pada ({0},{1})”,
15:
top, left);
16:
}
17: }
18:
19: public class
ListBox : Window {
20:
//member variable baru pada class anak
21:
private string listBoxContent;
22:
public ListBox(int top, int left, string contents):base(top,left) {
23:
this.listBoxContent = contents;
24:
}
25:
26:
//versi baru karena override dari base classnya
27:
public new void DrawWindow() {
28:
base.DrawWindow();
29:
Console.WriteLine(“Menuliskan string pada listbox: {0}”,
30:
listBoxContent);
31:
}
32:
}
33:
34:
class LatInheritance {
35:
public static void Main(string[] args) {
36:
Window objWindow = new Window(10, 15);
37:
objWindow.DrawWindow();
38:
39:
ListBox objList = new ListBox(15, 20, “Hello ListBox”);
40:
objList.DrawWindow();
41:
}
42:
}
·
Polymorphism
: konsep dimana beberapa
object dapat memiliki metode yang sama dengan aksi yang berbeda. mengakibatkan adanya
kemampuan untuk sebuah objek untuk mengubah perilakunya sesuai dengan bagaimana
itu digunakan.
·
ilustrasi polymorphism :
Misalkan kita punya satu class hewan dan diturunkan menjadi dua
class hewan berkaki dua dan hewan berkaki empat. Ketika hewan
berkaki dua melakukan method makan maka yang dilakukan adalah makan
dengan paruhnya, dan ketika hewan berkaki empat juga makan maka dia
akan menggunakan mulutnya. Keduanya melakukan aksi yang sama
yaitu makan akan tetapi perlakuannya lain.
• Contoh polymorphism:
class Binatang
{
public void info()
{
System.out.println(” Info tentang Hewan : “);
}
}
class Herbivora extends Binatang
{
public void info()
{
System.out.println (“Info pada herbivora: Memakan makanan berupa tumbuh –
tumbuhan”);
}
}
class Kelinci extends Herbivora
{
public void info()
{
System.out.println(“Info pada Kelinci: Memakan makanan berupa wortel”);
}
}
public class Polimorfisme
{
public static void main(String[] args)
{
Herbivora herbivora;
Kelinci kelinciku;
Binatang hewan; herbivora=new
Herbivora();
kelinciku=new Kelinci();
hewan=herbivora;
hewan.info();
hewan=kelinciku;
hewan.info();
}
}
·
Encapsulation : penyatuan antara proses-proses
yang terjadi dan sejumlah data yang dikelola kedalam suatu bentuk kelompok
tertentu (dibentuknya suatu
object secara abstrak (abstraction)). Akibatnya, obyek dapat bekerja sama dalam banyak hal dalam sistem.
Contoh :
class Siswa
{
String nama;
String nim;
void isiData ( String namaku,String nimku )
{
nama = namaku;
nim = nimku;
}
String ambilNama()
{
return nama;
}
String ambilNim()
{
return nim;
}
}
public class Mahasiswa
{
public static void main ( String [] args)
{
Siswa mahasiswa_itn = new Siswa(); //membuat variable instant
mahasiswa_itn.isiData(“Dina Damayanti”,”0412585″);
System.out.println( “Nama : ” + mahasiswa_itn.ambilNama());
System.out.println( “Nim : ” + mahasiswa_itn.ambilNim());
}
}
Abstraction : proses yang mewakili versi yang disederhanakan dari objek dunia nyata dalam
kelas dan objek.
Contoh :
Jika kita membangun aplikasi shipping, kita harus membangun object produk
dengan atribut seperti ukuran dan berat. Warna adalah contoh informasi yang
tidak ada hubungannya dan harus dibuang. Tetapi ketika kita membangun order-
entry application, warna menjadi penting dan harus termasuk atribut object
produk.
·
Aggregation : kondisi ketika object
berisi gabungan dari object-object yang berbeda dan bekerja bersama.
Contoh :
mesin pemotong rumput terdiri dari object roda, objects mesin, object
pisau dan lain-lain. Object mesinpun
merupakan gabungan dari berbagai object.
Kemampuan untuk menggunakan aggregation dalam OOP adalah satu feature
yang powerful yang memungkinkan model menjadi akurat.
7.
Overloading
·
Overloading : dua atau lebih method di
dalam satu kelas yang sama, dengan nama yang sama, namun dengan deklarasi
parameter yang membedakan.
syarat untuk membuat method Overloading adalah :
1.jumlah tipe dalam parameter nya harus berbeda.
2.tipe di parameter harus berbeda.
3.urutan tipe di dalam parameter harus berbeda.
0 komentar:
Posting Komentar