Nothing Impossible

Nothing Impossible

Selasa, 08 Oktober 2013

RANGKUMAN TENTANG OOP di C#


NAMA : FEBBY SINTANOVA NAHARI
NIM :123214212
KELAS : 2012 B




1.      Class, Attribute dan Method
Class (kelas) merupakan 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.
Attribute adalah segala sesuatu (data ) berhubungan dengan karakteristik objek dalam setiap kelas. Tiap attribute memiliki nilai yang berbeda untuk setiap objek.
Method merupakan tingkah laku dari suatu objek, jika bersifat static berarti tingkah laku semua objek dalam kelas tersebut.

2.      Object
Objec adalah instance dari class . jika class secara umum mempresentasikan (template) sebuah object, sebuah instance adalah representasi nyata dari class itu sendiri.
Contoh: dari class fruit kita bisa membuat objek pisang, durian, pepaya dan lain-lain.

3.      Cara membuat object
Untuk membuat objek, menggunakan perintah new dengan sebuah nama class yang akan dibuat sebagai instance dari class tersebut.
Contoh :
class 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 sebagai class Date ().

4.      Konstruktor
Adalah sebuah fungsi yang otomatis akan dipanggil setiap kali melakukan instansi terhadap suatu kelas dan digunakan untuk melakukan inisialisasi nilai dari data-data yang terdapat di dalam kelas yang bersangkutan. Dan suatu metode yang memberikan ilai awal pada saat suatu objek dibuat. Pada saat program dijalankan, construktor akan langsung memberikan nilai awal pada saat perintah new. Pada saat bekerja dengan construktor, hal yang mendasar untuk di perhatikan dalam membuat obyek, yaitu :
1.      Nama constructor sama dengan nama kelas .
2.      Tidak ada return type yang diberikan ke dalam constructor signature.
3.      Tidak ada return stetement di dalam tubuh constructor.

---------------------------------------------------------
5.         Private, protected, public

Private adalah menyatakan bahwa kelas tersebut
Tidak dapat diakses sama sekali oleh kelas lain bahkan juga tidak dapat diturunkan. Hanya dapat diakses oleh 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 merupakan turunannya.
     Public menyatakan bahwa kelas/ method/attribute tersebut dapat diakses oleh kelas lain dimanapun.

6.      Karakteristik OOP dan contohnya :
Inherintence ( pewarisan )  adalah merupakan konsep dimana suatu objek memiliki sejumlah perilaku yang dimiliki oleh objek lain dalam suatu herarki tertentu.
Penulisan inherinten pada C# adalah :

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:     }

Polymorpims adalah konsep dimana beberapa objek dapat memiliki metode yang sama dengan aksi yang berbeda mengakibatkan adanya kemampuan untuk sebuah objek untuk merubah perilakunya sesiai dengan bagainmana itu digunakan.
Ilustrasi Polymorpisme 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 adalah penyatuan proses-proses yang terjadi dan sebuah data yang dikelola kedalam suatu bentuk kelompok tertentu ( dibentuknya suatu object secara abstract). Akibatnya object dapat berkerja 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
Adalah dua atau lebih method di dalam suatu class yang sama, dengan nama yang sama namun dengan deklarasi parameter yang membedakan.
Syarat untuk membuat methode overloading adalah :
1.      Jumlah type pada parameternya harus beda
2.      Type di parameter harus beda
3.      Urutan type di parameter harus beda


8.      Membuat program
Menghitung nilai mata kuliah dan konversinya

//programnya

classProgram
    {
staticvoid Main(string[] args)
        {
double ntugas, nuts, npart, nuas, nakhir;

Console.WriteLine("menghitung Nilai Mata Kuliah mahaiswa");
Console.WriteLine("--------------------------------------------");
Console.Write("nilai patisipasi  = ");
            npart = double.Parse(Console.ReadLine());

Console.Write("nilai UTS         = ");
            nuts = double.Parse(Console.ReadLine());

Console.Write("nilai Tugas       = ");
            ntugas = double.Parse(Console.ReadLine());

Console.Write("nilai UAS         = ");
            nuas = double.Parse(Console.ReadLine());

Console.WriteLine("------------------------------------");
            nakhir = hitungNilaiAkhir(npart,ntugas,nuts,nuas);
Console.Write("Nilai akhir  = " + nakhir);
Console.WriteLine();
Console.Write("Nilai Huruf  = " + konversiHuruf(nakhir));
Console.ReadKey();

        }
publicstaticdouble hitungNilaiAkhir(double np, double nt, double nuts, double nuas)
        {
return 0.3 * np + 0.2 * nt + 0.3 * nuas + 0.2 * nuts;
        }
publicstaticstring konversiHuruf(double na)
        {
string nh = "" ;
if (na > 85 && na <= 100)
            {
                nh = "A";

            }
if (na > 80 && na <= 85)
            {
                nh = "A-";
            }
if (na > 75 && na <= 80)
            {
                nh = "B+";
            }
if(na > 70 && na <= 75)
            {
                nh = "B";
            }
if (na > 65 && na <= 70)
            {
                nh = "B-";
            }
if (na > 60 && na <= 65)
            {
                nh = "C+";
            }
if (na > 55 && na <= 60)
            {
                nh = "C";
            }
if (na > 50 && na <= 55)
            {
                nh = "C-";
            }
if (na > 40 && na <= 50)
            {
                nh = "D";
            }
if (na <= 40)
            {
                nh  = "E";
            }
return nh;
        }

        }







 //output-nya

 

 









            

Tidak ada komentar: