Bagikan melalui


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 antarmuka Friend.

    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.

Lihat juga