C # Kelas Parsial dan Metode Parsial (Dengan Contoh)

Pada artikel ini kita akan belajar tentang bagaimana dan mengapa kelas parsial dan metode parsial diimplementasikan di C #.

Ada banyak situasi ketika Anda mungkin perlu membagi definisi kelas, seperti saat mengerjakan proyek berskala besar, beberapa pengembang dan pemrogram mungkin perlu bekerja di kelas yang sama pada waktu yang sama. Dalam hal ini kita bisa menggunakan fitur bernama Partial Class .

Pengantar Kelas Parsial

Saat memprogram dalam C # (atau OOP), kita dapat membagi definisi kelas menjadi dua atau lebih file sumber. File sumber berisi bagian dari definisi kelas, dan semua bagian digabungkan saat aplikasi dikompilasi. Untuk memisahkan definisi kelas, kita perlu menggunakan partialkata kunci.

Contoh 1:

Kami memiliki proyek bernama HeightWeightInfoyang menunjukkan tinggi dan berat.

Kami memiliki file bernama File1.csdengan kelas parsial bernama Record. Ini memiliki dua variabel integer h & w dan metode / konstruktor bernama Record yang memberikan nilai h & w.

 namespace HeightWeightInfo ( class File1 ( ) public partial class Record ( private int h; private int w; public Record(int h, int w) ( this.h = h; this.w = w; ) ) )

Berikut adalah file lain bernama File2.cs dengan Record kelas parsial yang sama yang hanya memiliki metode PrintRecord. Cara ini akan menampilkan nilai h & w.

 namespace HeightWeightInfo ( class File2 ( ) public partial class Record ( public void PrintRecord() ( Console.WriteLine("Height:"+ h); Console.WriteLine("Weight:"+ w); ) ) )

Di sini sekarang kita dapat melihat metode utama proyek:

 namespace HeightWeightInfo ( class Program ( static void Main(string() args) ( Record myRecord = new Record(10, 15); myRecord.PrintRecord(); Console.ReadLine(); ) ) )

Di sini kita memiliki objek dari kelas Record sebagai myRecord yang meneruskan nilai parameter sebagai 10 dan 15 ke h dan w masing-masing ke metode yang ditentukan di File1.cs.

Metode PrintRecord dipanggil oleh objek myRecord yang didefinisikan di File2.cs.

Ini menunjukkan bahwa partialkata kunci membantu menggabungkan semua atribut kelas yang ditentukan dalam berbagai file untuk bekerja sebagai satu kelas.

Tempat dimana partialkelas dapat digunakan:

  1. Saat mengerjakan proyek yang lebih besar dengan lebih dari satu pengembang, ini membantu pengembang untuk mengerjakan kelas yang sama secara bersamaan.
  2. Kode dapat ditambahkan atau dimodifikasi ke kelas tanpa membuat ulang file sumber yang secara otomatis dibuat oleh IDE (mis. Visual Studio).

Hal-hal yang Perlu Diingat tentang Kelas Parsial

Kata partialkunci menentukan bahwa bagian lain dari kelas dapat didefinisikan dalam namespace. Kata kunci parsial wajib digunakan jika kita mencoba membuat kelas menjadi parsial. Semua bagian kelas harus berada dalam namespace yang sama dan tersedia pada waktu kompilasi untuk membentuk tipe akhir. Semua bagian harus memiliki pengubah akses yang sama yaitu privat, publik, atau sebagainya.

  • Jika ada bagian yang dinyatakan abstrak, maka seluruh tipe dianggap abstrak.
  • Jika ada bagian yang dinyatakan tertutup, maka seluruh jenis dianggap tertutup.
  • Jika ada bagian yang mendeklarasikan tipe dasar, maka tipe keseluruhan mewarisi kelas itu.
  • Setiap anggota kelas yang dinyatakan dalam definisi parsial tersedia untuk semua bagian lainnya.
  • Semua bagian dari kelas parsial harus berada dalam namespace yang sama.

** Catatan: The partialpengubah tidak tersedia pada delegasi atau enumerasi deklarasi

Pengantar Metode Parsial

Kelas parsial mungkin berisi metode parsial. Salah satu bagian kelas berisi tanda tangan metode. Implementasi opsional dapat ditentukan di bagian yang sama atau bagian lain. Jika implementasinya tidak disediakan, maka metode dan semua panggilan akan dihapus pada waktu kompilasi.

Contoh 2:

Mari kita ambil contoh sebagai kelas parsial Cardidefinisikan dalam file1.csyang memiliki tiga metode InitializeCar (), BuildRim () dan BuildWheels (). Di antara metode tersebut, InitializeCar didefinisikan sebagai partial.

 public partial class Car ( partial void InitializeCar(); public void BuildRim() ( ) public void BuildWheels() ( ) )

Dan kami memiliki file lain bernama as file2.csyang memiliki dua metode BuildEngine dan InitializeCar. Metode InitializeCar adalah metode parsial yang juga didefinisikan dalam file1.cs.

 public partial class Car ( public void BuildEngine() ( ) partial void InitializeCar() ( string str = "Car"; ) )

Deklarasi metode parsial terdiri dari dua bagian:

  1. Definisi seperti dalam file1.cs.
  2. Implementasinya seperti pada file2.cs.

Mereka mungkin berada di bagian terpisah dari kelas parsial, atau di bagian yang sama.

Hal yang perlu diingat tentang Metode Parsial

  • partial kata kunci.
  • tipe pengembalian void .
  • secara implisit private.
  • dan tidak bisa virtual.

Artikel yang menarik...