Perbedaan Antara Kelas dan Struktur

Kelas vs Struktur

Beberapa konsep utama bahasa pemrograman Object Oriented (OO) adalah enkapsulasi, pewarisan dan polimorfisme. Kelas dan Struktur adalah dua konstruksi / alat OO, yang membantu programmer untuk mencapai konsep-konsep ini dalam sebagian besar bahasa pemrograman OO yang ada (Java tidak menyediakan struktur). Kelas adalah representasi abstrak dari objek dunia nyata. Struktur sangat mirip dengan kelas dengan penggunaan yang serupa, tetapi memiliki beberapa keterbatasan dibandingkan dengan kelas. Kedua kelas dan struktur digunakan untuk mengelompokkan jenis data yang serupa, bersama-sama.

Apa itu Kelas??

Kelas menggambarkan representasi abstrak dari objek dunia nyata, sedangkan hubungan menggambarkan bagaimana masing-masing kelas terhubung dengan yang lain. Baik kelas dan hubungan memiliki sifat yang disebut atribut. Metode dalam kelas mewakili atau mendefinisikan perilaku kelas ini. Metode dan atribut kelas disebut anggota kelas. Biasanya, enkapsulasi dicapai dengan membuat atribut menjadi pribadi, sambil menciptakan metode publik yang dapat digunakan untuk mengakses atribut tersebut. Objek adalah turunan dari kelas. Warisan memungkinkan pengguna untuk memperluas kelas (disebut sub kelas) dari kelas lain (disebut kelas super). Polimorfisme memungkinkan pemrogram untuk mengganti objek suatu kelas sebagai pengganti objek kelas supernya. Biasanya, kata benda yang ditemukan dalam definisi masalah langsung menjadi kelas dalam program. Dan demikian pula, kata kerja menjadi metode. Publik, pribadi, dan terlindungi adalah pengubah akses tipikal yang digunakan untuk kelas. Diagram kelas menunjukkan kelas sistem, hubungan antar kelas, dan atributnya.

Apa itu Struktur??

Seperti disebutkan di atas, struktur sangat mirip dengan kelas dengan penggunaan yang serupa, tetapi kemampuannya sedikit terbatas daripada kelas. Bahkan, kelas dapat dianggap sebagai perpanjangan dari struktur. Sebagai contoh, struktur sama dengan kelas di C ++, tetapi mereka memiliki anggota publik secara default. Struktur dapat didefinisikan oleh pengguna untuk mewakili tipe yang komposit. Mirip dengan kelas, struktur mengandung anggota yang dapat memiliki banyak tipe. Kata kunci struct digunakan untuk mendefinisikan struktur dalam C dan C ++, sedangkan Struktur kata kunci digunakan untuk hal yang sama dalam bahasa pemrograman .NET.

Apa perbedaan antara Kelas dan Struktur?

Meskipun, baik kelas dan struktur adalah konstruksi serupa yang ditemukan dalam bahasa pemrograman, mereka memiliki perbedaan yang halus. Biasanya, kelas adalah perpanjangan dari struktur, dan oleh karena itu struktur memiliki beberapa keterbatasan relatif. Sebagai contoh, struktur dapat dianggap sama dengan kelas di C ++, tetapi anggota tidak publik secara default di kelas (tidak seperti dalam struktur). Ini sebenarnya berarti bahwa Anda dapat mendefinisikan kelas dan struktur dengan karakteristik yang persis sama menggunakan pengubah akses yang sesuai di C ++. Namun dalam C, struktur tidak dapat berisi fungsi atau operasi yang kelebihan beban. Kelas dan struct kata kunci digunakan untuk menentukan kelas dan struktur dalam C ++, masing-masing. Ketika datang ke bahasa .NET (C #, VB.NET, dll.), Kelas adalah tipe referensi, sedangkan struktur adalah tipe nilai. Dan biasanya, struktur digunakan untuk objek yang lebih kecil, tetapi kelas digunakan untuk objek yang lebih besar yang disimpan dalam memori untuk periode yang lebih lama.