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