Bagikan melalui


Metode Parsial (Visual Basic)

Metode parsial memungkinkan pengembang untuk menyisipkan logika kustom ke dalam kode. Biasanya, kode adalah bagian dari kelas yang dihasilkan desainer. Metode parsial didefinisikan dalam kelas parsial yang dibuat oleh generator kode, dan biasanya digunakan untuk memberikan pemberitahuan bahwa sesuatu telah diubah. Mereka memungkinkan pengembang untuk menentukan perilaku kustom sebagai respons terhadap perubahan.

Perancang generator kode hanya mendefinisikan tanda tangan metode dan satu atau beberapa panggilan ke metode . Pengembang kemudian dapat memberikan implementasi untuk metode jika mereka ingin menyesuaikan perilaku kode yang dihasilkan. Ketika tidak ada implementasi yang disediakan, panggilan ke metode dihapus oleh pengkompilasi, sehingga tidak ada overhead performa tambahan.

Deklarasi

Kode yang dihasilkan menandai definisi metode parsial dengan menempatkan kata kunci Partial di awal baris tanda tangan.

Partial Private Sub QuantityChanged()  
End Sub  

Definisi harus memenuhi kondisi berikut:

  • Metode harus berupa Sub, bukan Function.

  • Isi metode harus dibiarkan kosong.

  • Pengubah akses harus Private.

Pelaksanaan

Implementasi ini terutama terdiri dari penulisan isi metode sebagian. Implementasi biasanya berada di kelas parsial terpisah dari definisi, dan ditulis oleh pengembang yang ingin memperluas kode yang dihasilkan.

Private Sub QuantityChanged()  
'    Code for executing the desired action.  
End Sub  

Contoh sebelumnya menduplikasi tanda tangan dalam deklarasi dengan tepat, tetapi variasi dimungkinkan. Secara khusus, pengubah lain dapat ditambahkan, seperti Overloads atau Overrides. Hanya satu Overrides pengubah yang diizinkan. Untuk informasi selengkapnya tentang modifikator metode, lihat Sub Pernyataan.

Gunakan

Anda memanggil metode parsial seperti Anda memanggil prosedur lain Sub. Jika metode telah diimplementasikan, argumen dievaluasi dan isi metode dijalankan. Namun, ingatlah bahwa menerapkan metode parsial bersifat opsional. Jika metode tidak diimplementasikan, panggilan ke metode tersebut tidak berpengaruh, dan ekspresi yang diteruskan sebagai argumen ke metode tidak dievaluasi.

Contoh

Dalam file bernama Product.Designer.vb, tentukan Product kelas yang memiliki Quantity properti .

Partial Class Product

    Private _Quantity As Integer

    Property Quantity() As Integer
        Get
            Return _Quantity
        End Get
        Set(ByVal value As Integer)
            _Quantity = value
            QuantityChanged()
        End Set
    End Property

    ' Provide a signature for the partial method.
    Partial Private Sub QuantityChanged()
    End Sub
End Class

Dalam file bernama Product.vb, berikan implementasi untuk QuantityChanged.

Partial Class Product

    Private Sub QuantityChanged()
        MsgBox("Quantity was changed to " & Me.Quantity)
    End Sub

End Class

Terakhir, dalam metode Main proyek, deklarasikan Product instance dan berikan nilai awal untuk property-nya Quantity.

Module Module1

    Sub Main()
        Dim product1 As New Product With {.Quantity = 100}
    End Sub

End Module

Kotak pesan akan muncul yang menampilkan pesan ini:

Quantity was changed to 100

Lihat juga