Pernyataan Mewarisi
Menyebabkan kelas atau antarmuka saat ini mewarisi atribut, variabel, properti, prosedur, dan peristiwa dari kelas atau set antarmuka lain.
Sintaks
Inherits basetypenames
Generator
Term | Definisi |
---|---|
basetypenames |
Harus diisi. Nama kelas atau antarmuka dari asal kelas ini. -atau- Nama antarmuka tempat antarmuka ini diturunkan. Gunakan koma untuk memisahkan alamat yang banyak. |
Keterangan
Jika digunakan, pernyataan Inherits
harus menjadi baris non-kosong, non-komentar pertama dalam definisi kelas atau antarmuka. Ini harus segera mengikuti pernyataan Class
atau Interface
.
Anda hanya dapat menggunakan Inherits
di kelas atau struktur. Ini berarti konteks deklarasi untuk warisan tidak boleh berupa file sumber, namespace, modul, antarmuka, prosedur, atau blok.
Aturan
Pewarisan kelas. Jika kelas menggunakan pernyataan
Inherits
, Anda hanya dapat menentukan satu kelas dasar.Kelas tidak dapat mewarisi dari kelas yang bersarang di dalamnya.
Pewarisan Antarmuka. Jika antarmuka menggunakan pernyataan
Inherits
, Anda dapat menentukan satu atau lebih antarmuka dasar. Anda dapat mewarisi dari dua antarmuka bahkan jika masing-masingnya menentukan anggota dengan nama yang sama. Jika Anda melakukannya, kode implementasi harus menggunakan kualifikasi nama untuk menentukan anggota mana yang diterapkan.Antarmuka tidak dapat mewarisi dari antarmuka lain dengan tingkat akses yang lebih ketat. Misalnya, antarmuka
Public
tidak dapat mewarisi dari antarmukaFriend
.Antarmuka tidak dapat mewarisi dari antarmuka yang berlapis di dalamnya.
Contoh pewarisan kelas dalam .NET Framework adalah kelas ArgumentException, yang mewarisi dari kelas SystemException. Ini memberikan ArgumentException semua properti dan prosedur yang telah ditentukan sebelumnya yang diperlukan oleh pengecualian sistem, seperti properti Message dan metode ToString.
Contoh pewarisan antarmuka dalam .NET Framework adalah antarmuka ICollection, yang mewarisi dari antarmuka IEnumerable. Hal ini menyebabkan ICollection mewarisi definisi enumerator yang diperlukan untuk melintasi koleksi.
Contoh 1
Contoh berikut menggunakan pernyataan Inherits
untuk menunjukkan bagaimana kelas bernama thisClass
dapat mewarisi semua anggota kelas dasar bernama anotherClass
.
Public Class thisClass
Inherits anotherClass
' Add code to override, overload, or extend members
' inherited from the base class.
' Add new variable, property, procedure, and event declarations.
End Class
Contoh 2
Contoh berikut menunjukkan pewarisan beberapa antarmuka.
Public Interface thisInterface
Inherits IComparable, IDisposable, IFormattable
' Add new property, procedure, and event definitions.
End Interface
Antarmuka bernama thisInterface
sekarang mencakup semua definisi dalam antarmuka IComparable, IDisposable, dan IFormattable Anggota yang diwariskan menyediakan secara berurutan perbandingan khusus jenis dari dua objek, merilis sumber daya yang dialokasikan, dan mengekspresikan nilai objek sebagai String
. Kelas yang mengimplementasikan thisInterface
harus mengimplementasikan setiap anggota dari setiap antarmuka dasar.