Anda di halaman 1dari 8

NIM : 11321055

Nama : Amanda Artha Regina Simbolon

Prodi : D3 Teknologi Informasi

1. Penjelasan Setiap Kode Program


1) Encapsulation1_055 ➔ Public Asesor Get and Public Mutator Set

Encapsulation
merupakan konsep
melindungi data dan
menyembunyikan
detail bagaimana data
bekerja dari end-user.
End-user hanya tahu
input-outputnya
tanpa mengetahui
bagaimana metode
get dan set-nya.

Sebelum membuat class main, kita buat dahulu class Hero dengan atribut nama dengan tipe
string, power bertipe integer, dan health tipe integer. Kemudian membuat constructor dengan
nama yang sama dengan kelas-nya juga atribut yang sama dengan kelas Hero-nya yaitu
NamaHero,
PowerHero, dan
HealthHero. Nama
akan diassign ke
NamaHero begitu
juga dengan power
dan health. Kemudian
kita buat public
asesor dan mutator
dengan 2 method
yang berbeda. Yaitu public string GetNamaHero() yang akan mengembalikan sebuah nilai
yang memiliki hak akses. Hak aksesnya adalah public, dimana yang dikembalikan adalah
nama.
Kemudian membuat mutator yaitu public void setNamaHero dengan parameter string
NamaSetHero. Perbedaan get dan set adalah get berfungsi untuk mengembalikan nilai
sedangkan set berfungsi untuk merubah data / mengisi sebuah nilai. Sehingga get dan set
saling berkaitan kemudian diisi dengan nama = NamaSetHero.
Kemudian kita bungkus atau enkapsul public asesor dan mutator di dalam method yang
berbeda yaitu GetAndSet dengan Console.WriteLine dengan berisi Nama Hero adalah,
berdasarkan nama.
Kemudian kita isi fungsi main-nya, dengan objek yaitu NamaHeroML dari class Hero dengan
value Miya, 1000, 1000. Kemudian dipanggil getAndSet-nya. Ketika dipanggil getAndSet
maka di dalamnya ada public mutator get yaitu Console.Writeline dengan atribut nama yang
akan memanggil return nama sehingga akan tampil nama hero-nya adalah Miya yang berasal
dari fungsi main.

Output:

2) Encapsulation dengan .NET Properties


Sebelumnya, kita
copy terlebih dahulu
kode program dari
encapsulation yang
pertama lalu paste ke
encapsulation-2.
Pada .net properties
kita bisa meringkas
methodnya dengan
menghapus public
asesor dan mutator
dari yang kita copy,
lalu diganti dengan
public string

NamaHero_NetProperty yaitu line 31 kemudian ada get kemudian return nama dan set nama
sesuai dengan value yang diinput. Ketika dipanggil namaHero_NetProperty pada gungsi
main, dengan value “Change”. L.ine 31 akan mengget/mengembalikan nama. Metode ini
digunakan ketika ingin mengubah nama menjadi value kemudian direturn menjadi nama.

Ketika diprint getAndSet yang pertama akan ditampilkan selanjutnya ketika digunkan
properties-nya, maka akan merubah Namanya. Sehingga output-nya akan menjadi seperti
berikut:
3) Encapsulation dengan Automatic .NET Properties
Automatic tersebut
berbeda dari
encapsulation
sebelumnya adalah kita
dapat membuat method
get dan set di dalam
atribut-nya, seperti pada
line 20. Kemudian
dihapus metode net
propertiesnya, lalu pada
main diganti pada ;ine
12 yang sudah diubah
menjadi .nama.

Sehingga menghasilkan output seperti berikut:


Hasilnya masih sama seperti code sebelumnya tetapi
potongan programnya lebih simple.

4) Inheritance (Is A)
Kode program di samping membuat objek dari kelas "Mobil" dan "Minivan", dan mencetak
nilai dari beberapa atribut dari masing-masing objek. Kelas "Mobil" memiliki 2 atribut
bernama "CurrentKecepatan" dan "KecepatanMaks", yang masing masing memiliki tipe
data integer. Atribut ini dapat dibaca dan ditulis melalui properti "get" dan "set" yang
disediakan oleh C#. Kelas "Mobil" juga memiliki konstruktor yang digunakan untuk mengisi
nilai atribut "CurrentKecepatan" dan "KecepatanMaks". Kelas "Minivan" adalah kelas
turunan dari kelas "Mobil". Kelas ini memiliki atribut tambahan bernama
"TransmissionType", yang bertipe data string. Kelas "Minivan" memiliki konstruktor yang
menerima 3 argument
dan mengisi nilai atribut-
atribut dari objek. Kelas
ini juga memanggil
konstruktor dari kelas
"Mobil" dengan
menggunakan kata kunci
"base" untuk memastikan
bahwa atribut
"CurrentKecepatan" dan
"KecepatanMaks" dari
kelas "Mobil" juga
diterima dan diisi oleh
objek dari kelas
"Minivan". Pada method
Main, objek baru dari
kelas "Minivan" dan
"Mobil" dibuat dan
diberikan nilai awal untuk atribut-atributnya. Nilai atribut "CurrentKecepatan",
"KecepatanMaks", dan "TransmissionType" dari objek "Minivan" dicetak menggunakan
statement "Console.WriteLine". Nilai atribut "CurrentKecepatan" dan "KecepatanMaks" dari
objek "Mobil" juga dicetak dengan menggunakan statement "Console.WriteLine". Program
akan berakhir setelah pengguna menekan tombol apapun pada console.

Sehingga menghasilkan output seperti berikut:


5) Inheritance (Has A)
Pada codingan
di samping
terdapat 3 kelas
yaitu Program,
Mobil dan
Minivan.
Kelas Program
adalah kelas
utama yang
berisi method
Main yang
akan dieksekusi
pertama kali
saat program
dijalankan.
Dalam method
Main, objek
min dari kelas
Minivan dibuat
dan diberikan
tiga nilai
sebagai
parameter pada
constructor Minivan. Kemudian, kecepatan maksimum, kecepatan, dan tipe porsneling objek
min ditampilkan ke console dengan menggunakan Console.WriteLine. Kelas Mobil adalah
kelas induk yang memiliki properti KecepatanMaks dan Kecepatan serta memiliki sebuah
constructor yang menerima tiga parameter. Kelas ini juga memiliki method setPorsneling
yang digunakan untuk mengatur tipe porsneling dan method GetPorsneling yang digunakan
untuk mengambil tipe porsneling. Kelas ini juga memiliki objek p dari kelas Porsneling.
Kelas Minivan adalah kelas anak yang mewarisi properti dan method dari kelas Mobil. Kelas
ini memiliki constructor yang memanggil constructor dari kelas Mobil dengan memasukkan
tiga parameter yang diterima.
Sehingga menghasilkan output seperti berikut:

2. Sistem Gaji (Payroll) dengan menerapkan Inheritance dan Property.


Sistem dibuat untuk menghitung gaji untuk level Staff, Supervisor, dan Manager. Semua level
memperoleh gaji pokok yang sama. Dan semua juga mendapat uang lembur kecuali Manager.
Menghasilkan output seperti berikut:

Anda mungkin juga menyukai