PEMROGRAMAN TERSTRUKTUR II PERTEMUAN 6
PEWARISAN (INHERITANCE)
Pewarisan merupakan suatu proses dimana suatu kelas diturunkan dari kelas lainnya sehingga ia mendapatkan ciri atau sifat dari kelas tersebut. PEWARISAN (INHERITANCE) KECAP Kedelai Air Bumbu KECAP MANIS Kecap Gula KECAP ASIN Kecap Garam KECAP PEDAS Kecap Cabe Contoh diagram kelas yang menerapkan pewarisan
MEMBUAT PROGRAM INHERITANCE Diagram diatas menjelaskan konsep pewarisan, dimana clsdokter adalah Super Kelas, dan clsdokter memiliki dua turunan yaitu clsdokterumum dan clsdokterspecialis Untuk Latihan buatlah sebuah form seperti pada gambar berikut: Desain form frmdokter
Nama Objek Properties Nilai Form1 Text frmdokter Gaji Dokter Label1 Text ID Dokter: Label 2 Text Nama Dokter: Label3 Text Keterangan: Label4 Text Gaji Pokok: Label5 Text Tunjangan Profesi: Label6 Text Tunjangan Specialis: Label7 Text Total Gaji TextBox1 txtiddokter TextBox2 txtnamadokter ComboBox1 Item cboketerangan Umum, Specialis TextBox3 txtgajipokok TextBox4 TextBox5 Enabled Enabled lbltunjanganprofesi False lblspecialis False INHERITANCE Setting properties yang ada pada form frmdokter seperti pada tabel berikut: Nama Objek Properties Nilai TextBox6 Button1 Button2 Enabled Text Text lbltotalgaji False cmdhitung &Hitung cmdkeluar &Keluar
INHERITANCE Buat sebuah kelas dengan nama clsdokter, dan buat program berikut pada clsdokter. Public Class clsdokter Private IDDokter As String Private NamaDokter As String Private Keterangan As String Private GajiPokok As Single Public Property middokter() As String Get Return IDDokter End Get Set(ByVal value As String) IDDokter = value End Set End Property Public Property mnamadokter() As String Get Return NamaDokter End Get Set(ByVal value As String) Public Property mketerangan As String Get Return NamaDokter End Get Set(ByVal value As String) NamaDokter = value End Set End Property Public Property mgajipokok As Single Get Return GajiPokok End Get Set(ByVal value As Single) GajiPokok = value End Set End Property End Class
INHERITANCE Buat sebuah kelas dengan nama clsdokterumum, dan buat program berikut pada clsdokterumum. Public Class clsdokterumum Inherits clsdokter Public Function TunjanganProfesi(ByVal ketgaji As Single) As Single Return (ketgaji * 0.1) End Function Public Function TotalGaji(ByVal Gaji As Single, ByVal xtunjangan As Single) As Single Gaji = frmdokter.txtgajipokok.text xtunjangan = TunjanganProfesi(Gaji) Return Gaji + xtunjangan End Function End Class
INHERITANCE Buat sebuah kelas dengan nama clsdokterspecialis, dan buat program berikut pada clsdokterspecialis. Public Class clsdokterspecialis Inherits clsdokter Public Function Tunjanganprofesi(ByVal ketgaji As Single) As Single Return (ketgaji * 0.15) End Function Public Function TunjanganSpecialis(ByVal ketgaji As Single) As Single Return (ketgaji * 0.1) End Function Public Function TotalGaji(ByVal Gaji As Single, ByVal xtunjangan As Single, ByVal xtunjanganspecialis As Single) As Single Gaji = frmdokter.txtgajipokok.text xtunjangan = Tunjanganprofesi(Gaji) xtunjanganspecialis = TunjanganSpecialis(Gaji) Return Gaji + xtunjangan + xtunjanganspecialis End Function End Class
INHERITANCE Sekarang buatlah program di Form frmdokter dengan program berikut: Private Sub cmdhitung_click(byval sender As System.Object, ByVal e As System.EventArgs) Handles cmdhitung.click If cboketerangan.text = "Umum" Then Dim objdokumum As New clsdokterumum With objdokumum.middokter = txtiddokter.text.mnamadokter = txtnamadokter.text.mketerangan = cboketerangan.text.mgajipokok = txtgajipokok.text lbltunjanganprofesi.text =.TunjanganProfesi(.mGajiPokok) lblspecialis.text = 0 lbltotalgaji.text =.TotalGaji(.mGajiPokok, Val(lblTunjanganProfesi.Text)) End With...
INHERITANCE Lanjutan Else Dim objdokspecialis As New clsdokterspecialis With objdokspecialis.middokter = txtiddokter.text.mnamadokter = txtnamadokter.text.mketerangan = cboketerangan.text.mgajipokok = txtgajipokok.text lbltunjanganprofesi.text =.Tunjanganprofesi(.mGajiPokok) lblspecialis.text =.TunjanganSpecialis(.mGajiPokok) lbltotalgaji.text =.TotalGaji(.mGajiPokok, Val(lblTunjanganProfesi.Text), Val(lblSpecialis.Text)) End With End If
TUGAS PROGRAMER 1. Membuat transaksi penggajian dengan metode Inheritance, sesuaikan dengan masalah dan tema masing-masing. 2. Sebelum membuat Inheritance pada program, buatlah bagan jabatan yang akan dibuatkan inheritance terlebih dahulu, contoh:
SEKIAN MATERI HARI INI SEMOGA BERMANFAAT