Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mendeklarasikan nama kelas dan memperkenalkan definisi variabel, properti, peristiwa, dan prosedur yang terdiri dari kelas.
Sintaksis
[ <attributelist> ] [ accessmodifier ] [ Shadows ] [ MustInherit | NotInheritable ] [ Partial ] _
Class name [ ( Of typelist ) ]
[ Inherits classname ]
[ Implements interfacenames ]
[ statements ]
End Class
Bagian
| Istilah | Definisi |
|---|---|
attributelist |
Fakultatif. Lihat Daftar Atribut. |
accessmodifier |
Fakultatif. Dapat berupa salah satu hal berikut: - Umum - Dilindungi - Teman - Swasta - Teman yang Dilindungi - Dilindungi Privat Lihat Tingkat akses di Visual Basic. |
Shadows |
Fakultatif. Lihat Bayangan. |
MustInherit |
Fakultatif. Lihat MustInherit. |
NotInheritable |
Fakultatif. Lihat NotInheritable. |
Partial |
Fakultatif. Menunjukkan definisi parsial kelas. Lihat Parsial. |
name |
Dibutuhkan. Nama kelas ini. Lihat Nama Elemen yang Dideklarasikan. |
Of |
Fakultatif. Menentukan bahwa ini adalah kelas generik. |
typelist |
Diperlukan jika Anda menggunakan kata kunci Dari . Daftar parameter jenis untuk kelas ini. Lihat Daftar Jenis. |
Inherits |
Fakultatif. Menunjukkan bahwa kelas ini mewarisi anggota kelas lain. Lihat Pernyataan Warisan. |
classname |
Diperlukan jika Anda menggunakan Inherits pernyataan . Nama kelas tempat kelas ini berasal. |
Implements |
Fakultatif. Menunjukkan bahwa kelas ini mengimplementasikan anggota satu atau beberapa antarmuka. Lihat Menerapkan Pernyataan. |
interfacenames |
Diperlukan jika Anda menggunakan Implements pernyataan . Nama antarmuka yang diterapkan kelas ini. |
statements |
Fakultatif. Pernyataan yang menentukan anggota kelas ini. |
End Class |
Dibutuhkan.
Class Mengakhiri definisi. |
Komentar
Pernyataan Class mendefinisikan jenis data baru.
Kelas adalah blok penyusun dasar pemrograman berorientasi objek (OOP). Untuk informasi selengkapnya, lihat Objek dan Kelas.
Anda hanya dapat menggunakan Class di namespace layanan atau tingkat modul. Ini berarti konteks deklarasi untuk kelas harus berupa file sumber, namespace, kelas, struktur, modul, atau antarmuka, dan tidak dapat menjadi prosedur atau blok. Untuk informasi selengkapnya, lihat Konteks Deklarasi dan Tingkat Akses Bawaan.
Setiap instans kelas memiliki independen seumur hidup dari semua instans lainnya. Masa pakai ini dimulai ketika dibuat oleh klausa Operator Baru atau oleh fungsi seperti CreateObject. Ini berakhir ketika semua variabel yang menunjuk ke instans telah diatur ke Tidak Ada atau ke instans kelas lain.
Kelas default ke akses Teman . Anda dapat menyesuaikan tingkat aksesnya dengan pengubah akses. Untuk informasi selengkapnya, lihat Tingkat akses di Visual Basic.
Aturan
Bersarang. Anda dapat menentukan satu kelas dalam kelas lain. Kelas luar disebut kelas yang berisi, dan kelas dalam disebut kelas berlapis.
Turunan. Jika kelas menggunakan Pernyataan Warisan, Anda hanya dapat menentukan satu kelas dasar atau antarmuka. Kelas tidak dapat mewarisi dari lebih dari satu elemen.
Kelas tidak dapat mewarisi dari kelas lain dengan tingkat akses yang lebih ketat. Misalnya,
Publickelas tidak dapat mewarisi dariFriendkelas.Kelas tidak dapat mewarisi dari kelas yang berlapis di dalamnya.
Pelaksanaan. Jika kelas menggunakan Pernyataan Implementasi, Anda harus mengimplementasikan setiap anggota yang ditentukan oleh setiap antarmuka yang Anda tentukan di
interfacenames. Pengecualian untuk ini adalah pelengkapan kembali anggota kelas dasar. Untuk informasi selengkapnya, lihat "Pelengkapan Ulang" di Implementasi.Properti Default. Kelas dapat menentukan paling banyak satu properti sebagai properti defaultnya. Untuk informasi selengkapnya, lihat Default.
Perilaku
Tingkat Akses. Dalam kelas, Anda dapat mendeklarasikan setiap anggota dengan tingkat aksesnya sendiri. Anggota kelas default ke Akses publik , kecuali variabel dan konstanta, yang default ke Akses privat . Ketika kelas memiliki akses yang lebih terbatas daripada salah satu anggotanya, tingkat akses kelas lebih diutamakan.
Ruang lingkup. Kelas berada dalam cakupan di seluruh ruang nama, kelas, struktur, atau modulnya.
Cakupan setiap anggota kelas adalah seluruh kelas.
Seumur hidup. Visual Basic tidak mendukung kelas statis. Setara fungsional dari kelas statis disediakan oleh modul. Untuk informasi selengkapnya, lihat Pernyataan Modul.
Anggota kelas memiliki masa pakai tergantung pada bagaimana dan di mana mereka dideklarasikan. Untuk informasi selengkapnya, lihat Seumur Hidup di Visual Basic.
Kualifikasi. Kode di luar kelas harus memenuhi syarat nama anggota dengan nama kelas tersebut.
Jika kode di dalam kelas berlapis membuat referensi yang tidak memenuhi syarat ke elemen pemrograman, Visual Basic mencari elemen terlebih dahulu di kelas berlapis, maka di kelas yang berisi, dan seterusnya ke bagian terluar yang berisi elemen.
Kelas dan Modul
Elemen-elemen ini memiliki banyak kesamaan, tetapi ada beberapa perbedaan penting juga.
Terminologi. Versi Visual Basic sebelumnya mengenali dua jenis modul: modul kelas (file.cls) dan modul standar (file.bas). Versi saat ini masing-masing memanggil kelas dan modul ini.
Anggota Bersama. Anda dapat mengontrol apakah anggota kelas adalah anggota bersama atau instans.
Orientasi Objek. Kelas berorientasi objek, tetapi modul tidak. Anda dapat membuat satu atau beberapa instans kelas. Untuk informasi selengkapnya, lihat Objek dan Kelas.
Contoh
Contoh berikut menggunakan Class pernyataan untuk menentukan kelas dan beberapa anggota.
Class BankAccount
Shared interestRate As Decimal
Private accountBalance As Decimal
Public holdOnAccount As Boolean = False
Public ReadOnly Property Balance() As Decimal
Get
Return accountBalance
End Get
End Property
Public Sub PostInterest()
accountBalance = accountBalance * (1 + interestRate)
End Sub
Public Sub PostDeposit(ByVal amountIn As Decimal)
accountBalance = accountBalance + amountIn
End Sub
Public Sub PostWithdrawal(ByVal amountOut As Decimal)
accountBalance = accountBalance - amountOut
End Sub
End Class