ID Artikel: 307222 - Kajian Terakhir: 24 September 2011 - Revisi: 2.0

Cara menggunakan warisan dalam Visual Basic 2005 atau Visual Basic.NET

Tips SistemThis article applies to a different operating system than the one you are using. Article content that may not be relevant to you is disabled.
Untuk Microsoft Visual C#.NET versi artikel ini, lihat 307205  (http://support.microsoft.com/kb/307205/ ) .

Pada Halaman ini

Perbesar semua | Perkecil semua

RINGKASAN

Warisan adalah konsep berorientasi objek yang penting. Hal ini memungkinkan Anda untuk membangun hirarki terkait kelas dan menggunakan kembali fungsi yang didefinisikan di kelas-kelas yang ada.

Pada artikel ini, Anda akan belajar cara menggunakan warisan di Microsoft Visual Basic 2005 atau di Microsoft Visual Basic.NET. Anda akan menentukan kelas dasar yang berisi bidang dan metode untuk rekening bank generik. Anda kemudian akan menentukan kelas turunan yang mewakili jenis tertentu rekening bank. Kelas yang diturunkan akan mewarisi anggota dari kelas dasar, menimpa anggota selektif dan menambahkan anggota baru untuk jenis account.

Persyaratan

Pengetahuan yang diperlukan:
  • Visual Basic 2005 atau Visual Basic.Sintaks bersih
  • Konsep berorientasi objek

Membuat aplikasi konsol baru

  1. Mulai Microsoft Visual Studio 2005 atau Microsoft Visual Studio.NET, dan menciptakan sebuah Visual Basic konsol aplikasi proyek baru bernama UseInheritance pada komputer lokal Anda.
  2. Pada Project menu, klik Menambahkan kelas.
  3. Dalam Menambah Item baru kotak dialog, jenis Account.VB dalam Nama lapangan. Klik Terbuka.

    Catatan Pada Visual Studio 2005, klik Tambahkan Melainkan Terbuka.
  4. Visual Studio.NET menampilkan berkas Account.vb.
  5. Menyimpan proyek.

Membuat kelas dasar abstrak

  1. Tambahkan MustInherit pengubah untuk kelas Account untuk membuat Account kelas abstrak:
    Public MustInherit Class Account
    
    End Class
    					

Menulis kode untuk kelas dasar

  1. Menambahkan dua kolom untuk kelas Account:
    Private Name As String       ' Only accessible in base class
    Protected Balance As Double  ' Accessible in base class and derived class
  2. Tambahkan constructor untuk menginisialisasi bidang ini:
    Public Sub New(ByVal Nm As String, ByVal Bal As Double)
       Name = Nm
       Balance = Bal
    End Sub 
  3. Menambahkan metode berikut untuk kelas. The Overridable kata kunci berarti metode ini dapat diganti dalam kelas turunan:
    Public Overridable Sub Credit(ByVal Amount As Double)
       Balance += Amount
    End Sub
    
    Public Overridable Sub Debit(ByVal Amount As Double)
       Balance -= Amount
    End Sub
    
    Public Overridable Sub Display()
       Console.WriteLine("Name=" & Name & ", " & "Balance=" & Balance)
    End Sub
  4. Menambahkan metode berikut untuk kelas. Karena metode ini tidak ditandai sebagai Overridable, tidak dapat diganti dalam kelas turunan. Metode ini menyediakan kemampuan untuk mengubah nama pemegang rekening.
    Public Sub ChangeName(ByVal newName As String)
       Name = newName
    End Sub
  5. Menambahkan metode berikut untuk kelas. The MustOverride kata kunci berarti metode ini harus diganti di kelas turunan:
    Public MustOverride Function CalculateBankCharge() As Double

Membuat kelas yang diturunkan

  1. Dari Project menu, klik Menambahkan kelas.
  2. Dalam Menambah Item baru kotak dialog, jenis SavingsAccount.vb dalam Nama lapangan. Klik Terbuka.
  3. Visual Studio.NET menampilkan berkas SavingsAccount.vb.
  4. Mengubah definisi kelas SavingsAccount sebagai berikut, sehingga SavingsAccount mewarisi dari Account (Perhatikan bahwa Mewarisi kata kunci harus muncul pada baris baru):
    Public Class SavingsAccount 
       Inherits Account
    
    End Class

Menulis kode untuk kelas yang diturunkan

  1. Menambahkan sebuah field ke kelas SavingsAccount:
    Private MinBalance As Double  ' If the balance drops below MinBalance, 
                                  ' the bank will charge a fee on the account
  2. Tambahkan konstruktor sebagai berikut, untuk menginisialisasi bidang di kelas dasar dan kelas ini:
    Public Sub New(ByVal Nm  As String, _
                   ByVal Bal As Double, _
                   ByVal Min As Double)
       MyBase.New(Nm, Bal)        ' Call base-class constructor first
       MinBalance = Min           ' Then initialize fields in this class
    End Sub
  3. Menambahkan metode berikut untuk kelas SavingsAccount. Metode ini menimpa Overridable metode mewarisi dari kelas dasar:
    Public Overrides Sub Debit(Amount As Double)
       If Amount <= Balance Then  ' Use balance, inherited from base class
          MyBase.Debit(Amount)    ' Call Debit, inherited from base class
       End If
    End Sub
    
    Public Overrides Sub Display()
       MyBase.Display()           ' Call Display, inherited from base class
       Console.WriteLine("$5 charge if balance goes below $" & MinBalance)
    End Sub
  4. Anda harus menimpa semua MustOverride metode dari kelas dasar. Tambahkan berikut metode SavingsAccount kelas:
    Public Overrides Function CalculateBankCharge() As Double
       If Balance < MinBalance Then
          Return 5.0
       Else
          Return 0.0
       End If
    End Function

Memverifikasi bahwa ia bekerja

  1. Menampilkan kode untuk Module1.vb di jendela tampilan kode.
  2. Dalam Utama metode, membuat objek SavingsAccount sebagai berikut:
    Dim sa As SavingsAccount = New SavingsAccount("Freda Smith", 100.00, 25)
    sa.Display()
  3. Tambahkan kode berikut untuk memanggil Publik metode SavingsAccount atau Account:
    sa.Credit(100)
    sa.Debit(180)
    sa.ChangeName("Freda Jones")
    sa.Display()
    Console.WriteLine("Bank charge: $" & sa.CalculateBankCharge())
    					
  4. Membangun aplikasi.
  5. Dari Debug menu, klik Mulai tanpa Debugging untuk menjalankan aplikasi. Aplikasi menampilkan informasi berikut ini pada konsol:
    Name=Freda Smith, balance=100
    $5 charge if balance goes below $25
    Name=Freda Jones, balance=20
    $5 charge if balance goes below $25
    Bank charge: $5
    						
  6. Menjalankan aplikasi lagi, tapi kali ini menggunakan debugger. Mengatur breakpoint pada awal Utama metode dan pilih Mulai dari Debug menu. Langkah ke setiap pernyataan dan mengamati metode yang disebut selama aplikasi.

Berlaku bagi:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Kata kunci: 
kbvs2005applies kbvs2005swept kbhowtomaster kbmt KB307222 KbMtid
Penerjemahan MesinPenerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:307222  (http://support.microsoft.com/kb/307222/en-us/ )