Perbedaan antara kelas dan struktur

Perbedaan antara kelas dan struktur

Kelas vs Struktur

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

Kelas apa itu?

Kelas menggambarkan representasi abstrak objek dunia nyata, sedangkan hubungan menggambarkan bagaimana setiap kelas terhubung dengan orang lain. Baik kelas dan hubungan memiliki properti yang disebut atribut. Metode di kelas mewakili atau mendefinisikan perilaku kelas ini. Metode dan atribut kelas disebut anggota kelas. Biasanya, enkapsulasi dicapai dengan membuat atribut menjadi pribadi, sambil membuat metode publik yang dapat digunakan untuk mengakses atribut tersebut. Objek adalah contoh dari suatu kelas. Warisan memungkinkan pengguna untuk memperluas kelas (disebut sub kelas) dari kelas lain (disebut kelas super). Polimorfisme memungkinkan programmer untuk mengganti objek kelas sebagai pengganti objek kelas supernya. Biasanya, kata benda yang ditemukan dalam definisi masalah secara langsung menjadi kelas dalam program. Dan juga, kata kerja menjadi metode. Publik, pribadi dan terlindungi adalah pengubah akses khas 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 sama, tetapi sedikit kemampuan terbatas daripada kelas. Faktanya, kelas dapat dianggap sebagai perpanjangan struktur. Misalnya, struktur sama dengan kelas di C ++, tetapi mereka memiliki anggota publik secara default. Struktur dapat ditentukan oleh pengguna untuk mewakili tipe yang komposit. Mirip dengan kelas, struktur berisi anggota yang dapat menjadi bagian dari banyak jenis. Struktur kata kunci digunakan untuk mendefinisikan struktur dalam C dan C ++, sedangkan struktur kata kunci digunakan untuk hal yang sama .Bahasa pemrograman bersih.

Apa perbedaan antara kelas dan struktur?

Meskipun, baik kelas dan struktur adalah konstruksi serupa yang ditemukan dalam bahasa pemrograman, mereka memiliki perbedaan halus. Biasanya, kelas adalah perpanjangan dari struktur, dan oleh karena itu struktur memiliki beberapa keterbatasan relatif. Misalnya, 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 kelebihan beban. Kata kunci kelas dan struct digunakan untuk menentukan kelas dan struktur di C ++, masing -masing. Ketika datang .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.